试题C: 蛇形填数
本题总分:10 分
【问题描述】
如下图所示,小明用从1 开始的正整数“蛇形”填充无限大的矩阵。
容易看出矩阵第二行第二列中的数是5。请你计算矩阵中第20 行第20 列的数是多少?
【答案提交】
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一
个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
int a[50][50];
int cur = 1;
for(int i = 1 ;i <=50 ;i++) //代表第i行(第i列)对应的斜线
{
if(i%2==0){//右上到左下
int hang = 1;
int lie = i;
while(lie>=1){
a[hang++][lie--] = cur;
cur++;
}
}
else{//左下到右上
int hang = i;
int lie = 1;
while(hang>=1)
{
a[hang--][lie++] = cur;
cur++;
}
}
}
cout<<a[20][20];
return 0;
}