https://codeforces.com/problemset/problem/118/B
数字后,如果没数字了就得break掉,不会有多余的空格。
#include<bits/stdc++.h>
using namespace std;
int a[105][105];
int main(void)
{
int n;
cin>>n;
int m=n*2+1;
for(int i=0;i<m;i++)
{
for(int j=0;j<m;j++)
{
if(abs(i-n)+abs(j-n)<=n) a[i][j]=abs(abs(i-n)+abs(j-n)-n);
else a[i][j]=-1;
}
}
for(int i=0;i<m;i++)
{
for(int j=0;j<m;j++)
{
if(a[i][j]==-1) cout<<" ";
else
{
cout<<a[i][j];
if(j+1==m) break;
if(a[i][j+1]==-1) break;
cout<<" ";
}
}
cout<<endl;
}
return 0;
}