输入矩阵维数,输出蛇形矩阵;
例如5*5矩阵:
#include <iostream>
#include <cstdio>
using namespace std;
const int maxn = 10001;
int b[maxn][maxn];
int main(){
int n;
while(cin >> n)
{
for(int p=0; p<n; p++) {
for(int q = 0; q < n; q++){
b[p][q] = (p + q)*(p + q + 1)/2 + 1;
if((p + q) % 2) b[p][q] += q;
else b[p][q] += p;
if((p + q) >= n) //下半部分.
b[p][q] -= (p + q - n + 1) * (p + q - n + 1);
printf("%2d ", b[p][q]);
}
printf("\n");
}
}
return 0;
}