本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
如下图所示,小明用从 11 开始的正整数“蛇形”填充无限大的矩阵。
1 2 6 7 15 ...
3 5 8 14 ...
4 9 13 ...
10 12 ...
11 ...
...
容易看出矩阵第二行第二列中的数是 55。请你计算矩阵中第 2020 行第 2020 列的数是多少?
运行限制
- 最大运行时间:1s
- 最大运行内存: 128M
-
public class 蛇形填数 {
public static void main(String[] args) {
int r=1,c=1,ans=1;
while(r!=20 || c!=20)
{
if(r==1) {
if(c%2==0)
{
r++;c--;
}else {
c++;
}
}
else if(c==1)// 一定要是else if 不能是if,会导致答案数目少。
{
if(r%2==0)
{
r++;
}else {
r--;c++;
}
}
else if((r+c)%2==0)
{
r--;c++;
}else {
r++;c--;
}
ans++;
}
System.out.println(ans);
}
}