#include <stdlib.h>
#include <string.h>
#include <stdio.h>
#include <ctype.h>
#include <math.h>
#include <stack>
#include <queue>
#include <map>
#include <set>
#include <vector>
#include <string>
#include <iostream>
#include <algorithm>
using namespace std;
#define ll long long
#define ls rt<<1
#define rs ls1
#define lson l,mid,ls
#define rson mid+1,r,rs
#define middle (l+r)>>1
#define eps (1e-9)
#define clr_all(x,c) memset(x,c,sizeof(x))
#define clr(x,c,n) memset(x,c,sizeof(x[0])*(n+1))
#define MOD 1000000007
#define inf 100000007
#define pi acos(-1.0)
#define M 100+5
int a[M][M];
int main(){
int t,i,j,n;
while(~scanf("%d",&n)){
// if(n%2==0){
t=1;
for(i=0;i<n;i++){
if(i%2==0){
for(j=0;j<n;j++)
a[j][i]=t++;
}else {
for(j=n-1;j>=0;j--)
a[j][i]=t++;
}
}
// }else{
// }
for(i=0;i<n;i++){
for(j=0;j<n-1;j++)
printf("%d ",a[i][j]);
printf("%d\n",a[i][n-1]);
}
}
return 0;
}
#include <string.h>
#include <stdio.h>
#include <ctype.h>
#include <math.h>
#include <stack>
#include <queue>
#include <map>
#include <set>
#include <vector>
#include <string>
#include <iostream>
#include <algorithm>
using namespace std;
#define ll long long
#define ls rt<<1
#define rs ls1
#define lson l,mid,ls
#define rson mid+1,r,rs
#define middle (l+r)>>1
#define eps (1e-9)
#define clr_all(x,c) memset(x,c,sizeof(x))
#define clr(x,c,n) memset(x,c,sizeof(x[0])*(n+1))
#define MOD 1000000007
#define inf 100000007
#define pi acos(-1.0)
#define M 100+5
int a[M][M];
int main(){
int t,i,j,n;
while(~scanf("%d",&n)){
// if(n%2==0){
t=1;
for(i=0;i<n;i++){
if(i%2==0){
for(j=0;j<n;j++)
a[j][i]=t++;
}else {
for(j=n-1;j>=0;j--)
a[j][i]=t++;
}
}
// }else{
// }
for(i=0;i<n;i++){
for(j=0;j<n-1;j++)
printf("%d ",a[i][j]);
printf("%d\n",a[i][n-1]);
}
}
return 0;
}
本文介绍了一个使用C++实现的简单矩阵填充算法。该算法根据不同条件按特定顺序填充矩阵中的元素,并展示了完整的代码实现过程。通过调整循环和填充方式,可以实现对不同大小的矩阵进行有效填充。
836

被折叠的 条评论
为什么被折叠?



