0
点赞
收藏
分享

微信扫一扫

蓝桥杯蛇形填数

开源分享 2022-03-30 阅读 67
java

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

如下图所示,小明用从 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);

    }

    }

     

举报

相关推荐

0 条评论