#include <iostream>
using namespace std;
const int N=110;
int f[N][N];//邻接矩阵存图
int n;
int main() {
cin>>n;int idx=1;//临时值
int l=0,r=0;
for(int k=1;k<=n;k++,l++,r++)//左下角到右下角
{for(int i=l,j=0;i>=0;i--,j++,idx++)
f[i][j]=idx;
}for(int i=0;i<=n;i++)
{for(int j=0;j<=n;j++)
{if(f[i][j])cout<<f[i][j]<<' ';
}cout<<endl;
}return 0;
}//#牛客春招刷题训练营#https://www.nowcoder.com/discuss/727521113110073344
// 64 位输出请用 printf("%lld")

京公网安备 11010502036488号