URAL 1933 Guns for Battle!

来源:互联网 发布:mac seesheer试色 编辑:程序博客网 时间:2024/05/16 07:39

给一个n,要求构造一个矩阵,满足:

1、矩阵大小为(2n+1)*(2n+1)

2、沿对角线对称

3、每个数的值在[0,2n+1]上

4、每行每列没有重复的值


手动写了一下 直接找到规律。。


#include<cstdio>#include<cstring>using namespace std;int n,m,i,j,cnt,s[205][205],k;int main(){    while(~scanf("%d",&n))    {        m=2*n+1;        cnt=1;        for(i=0;i<m;i++,cnt--)        {            if(cnt==-1) cnt=m-1;            for(j=cnt,k=1;k<=m;j++,k++)            {                if(j==m) j=0;                s[i][j]=k;            }            s[i][i]=0;        }        for(i=0;i<m;i++)        {            for(j=0;j<m-1;j++)                printf("%d ",s[i][j]);            printf("%d\n",s[i][m-1]);        }    }    return 0;}


0 0
原创粉丝点击