zoukankan      html  css  js  c++  java
  • codefoeces 610 C

    H - Harmony Analysis

    给你一个k

    求一个由 * +  组成的 2^k *2^k  的矩阵

    条件是  任意两行  对应项乘积的和 为0  + 为 +1   * 为-1

    +

    ++

    +*

    ++++

    +*+*

    ++**

    +**+

    右上角 = 左下角 = 左上角    右下角 =左上角取反 

    #include<stdio.h>
    #include<algorithm>
    #include<string.h>
    #include<math.h>
    #include<queue>
    #include<set>
    #include<map>
    
    using namespace std;
    
    #define ll long long
    #define inf  1e15+7
    #define MAXN 1000010
    #define exp 1e-4
    
    bool z[1050][1050];
    
    int main()
    {
        int k;
        z[1][1]=1;
        for(int i=1;i<=9;i++)
        {
            int a=1<<(i-1);
            int b=1<<(i);
            for(int k=1;k<=a;k++)
                for(int j=a+1;j<=b;j++)
                {
                     z[a+k][j-a]=z[k][j]=z[k][j-a];
                     z[a+k][j]=!z[k][j-a];
                }
        }
        while(scanf("%d",&k)!=EOF)
        {
            int en=1<<k;
            for(int i=1;i<=en;i++)
            {
                for(int j=1;j<=en;j++)
                    if(z[i][j]==1)
                        printf("+");
                    else
                        printf("*");
                printf("
    ");
            }
        }
    
        return 0;
    }
    View Code
  • 相关阅读:
    Java基础回顾---JVM&JDK&JRE
    学习
    学习
    学习
    进度
    进度
    毕设进度
    学习进度
    Beta阶段项目总结
    第二阶段冲刺——seven
  • 原文地址:https://www.cnblogs.com/cherryMJY/p/7072583.html
Copyright © 2011-2022 走看看