0
点赞
收藏
分享

微信扫一扫

蓝桥杯蛇形填数

开源分享 2022-03-30 阅读 68
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 条评论