zoukankan      html  css  js  c++  java
  • 题解 CF1436B 【Prime Square】

    CF1436B
    对于一个 (n) 阶方阵,我们发现:

    当 $ n$ 为偶数时,对角线元素为 (1) ,其他元素为 (0) 时,可以保证每一行每一列的和都是 (2),满足题意。

    (n) 为奇数时,则需要在以上构造的基础上在中心元素所在的行列填一个 (1),使得中心元素所在的行列和为 (2),而加入新元素的行列的和为 (2)(3),仍然满足题意。

    (n=4left[ egin{matrix} 1 & 0 & 0 & 1\ 0 & 1 & 1 & 0 \ 0 & 1 & 1 & 0 \ 1 & 0 & 0 & 1end{matrix} ight])

    (n=5left[ egin{matrix} 1 & 0 &1 & 0 & 1\ 0 & 1 & 0 & 1 & 0 \ 1 & 0 & 1 & 0 & 0 \ 0 & 1 & 0 & 1 & 0\ 1 & 0 & 0 & 0 & 1 \end{matrix} ight])

    //AC代码
    #include<iostream>
    #include<cstdio>
    #include<algorithm>
    #include<cstring>
    #define N 101
    using namespace std;
    int T,a[N][N],n;
    int main()
    {
    	scanf("%d",&T);
    	while(T--){
    		memset(a,0,sizeof a);//别忘了清数组
    		scanf("%d",&n);
    		if(n==2){
    			printf("%d %d
    %d %d
    ",1,1,1,1); 
    			continue;
    		}
    		for(int i=1;i<=n;++i)a[i][i]=1;
    		for(int i=n,j=1;i>=1,j<=n;--i,++j)a[i][j]=1;
    		if(n%2==1)a[1][n/2+1]=1,a[n/2+1][1]=1;
    		for(int i=1;i<=n;++i){
    			for(int j=1;j<=n;++j)printf("%d ",a[i][j]);
    			printf("
    ");
    		}
    		
    	}
    	return 0;
    }
    
  • 相关阅读:
    搭建 springboot selenium 网页文件转图片环境
    洛谷P1352没有上司的舞会-题解
    错误集合
    洛谷P1434滑雪-题解
    洛谷P1278单词游戏-题解
    洛谷P1219八皇后-题解
    洛谷P1443马的遍历-题解
    洛谷P1135奇怪的电梯-题解
    经验集合
    洛谷P1019单词接龙-题解
  • 原文地址:https://www.cnblogs.com/Wuhen-GSL/p/13872290.html
Copyright © 2011-2022 走看看