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;
    }
    
  • 相关阅读:
    Building a flexiable renderer
    Indirect Illumination in mental ray
    我的心情
    Cellular Automata
    Subsurface Scattering in mental ray
    Shader Types in mental ray
    BSP Traversal
    我的渲染器终于达到了MR的速度
    How to handle displacement and motion blur
    说明
  • 原文地址:https://www.cnblogs.com/Wuhen-GSL/p/13872290.html
Copyright © 2011-2022 走看看