CF1506A Strange Table 题解
签到题~
我们可以找一下规律。
在竖排情况下的数 \(x\) 所在的坐标 \((i,j)\) 满足如下关系:
$i = x\mod n $
\(j = \lceil \frac xn \rceil\)
而坐标为 \((i,j)\) 在横排情况下对应的数 \(x\) 满足:
\(x=(i-1)\times m + j\)
模拟即可。
tips:记得开 long long
代码如下:
inline u64 solve(const u64 n,const u64 m,const u64 x) {
const int j = (x-1)/n + 1,i = x%n==0 ? n : x%n;
return (i-1)*m + j;
}
int main(int argc,const char **argv) {
read(t);
while(t--) {
read(n,m,x);
print('\n',solve(n,m,x));
}
return hl::flush(),0;
}