欢迎光临散文网 会员登陆 & 注册

【蓝桥杯学习记录】蛇形填数

2022-04-01 22:13 作者:长舟泛歌  | 我要投稿

一、题目

如下图所示,小明用从 1 开始的正整数“蛇形”填充无限大的矩阵。请你计算矩阵中第 20 行第 20 列的数是多少?

二、解题思路

 填空题,而且数比较小,直接用暴力方法。我们设行为i,列为j,行和列都从1开始。我们从(1,1)开始,观察后发现,在i-1超出边界值1时,i=1,且下次开始i开始++。j同理,超出边界之后j=1,且下次j++。同时我们发现,行数由减变加之后,列由加到减,列同理。

所以我们设置两个falg:flag_i,flag_j(1为加,0为减),初始i=1,j=1。i先减,j先加,但是这时i-1=0,所以下次还是i=1,而此时j=2,此时值为2,且下次j-1,i+1......

具体代码如下:

三、完整代码

四、出现问题

开始while循环条件因为是i=j=20,所以我相当然写的是i!=20 && j!=20。但其实不对,在其中一个出现20的时候,判断就是假,循环就会停止,所以应该是用或运算



【蓝桥杯学习记录】蛇形填数的评论 (共 条)

分享到微博请遵守国家法律