题解 | #蛇形矩阵#
蛇形矩阵
https://www.nowcoder.com/practice/f228a074c5274619b26be544962375e1
#include <stdio.h>
int main() {
int str[1000][1000],n;
scanf("%d",&n);
int x=0,sum=1;
while(x!=n)
{
if(x%2==0)
{
for(int i=0;i<=x;i++)
{
str[x-i][i]=sum;
sum++;
}
}
else
{
for(int i=0;i<=x;i++)
{
str[i][x-i]=sum;
sum++;
}
}
x++;
}
int side=1;
while(x!=2*n-1)
{
if(x%2==0)
{
for(int i=side;i<=n-1;i++)
{
str[x-i][i]=sum;
sum++;
}
side++;
}
else
{
for(int i=side;i<=n-1;i++)
{
str[i][x-i]=sum;
sum++;
}
side++;
}
x++;
}
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
printf("%d ",str[i][j]);
printf("\n");
}
return 0;
}
查看7道真题和解析