本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
如下图所示,小明用从 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); } }