zoukankan      html  css  js  c++  java
  • UVA 1605 Building for UN(思维)

    题目链接:

    https://cn.vjudge.net/problem/UVA-1605#author=0

     1 /*
     2 问题 设计一个包含若干层的联合国大厦,其中每一层都是等大的网格,每个格子分配给一个国家,使得任意两个不同的国家
     3 都有一对相邻的格子,也就是说要么同层中有公共边的格子,要么是相邻层的同一个格子。
     4 解题思路 首先看到这个题感觉无从下手,有种先放弃的感觉,看了分析,又读了读题,最多50个国家,每个国家用大写或者
     5 小写字母表示,那分为两层,第一层的第i行是国家i,第二层的每j列国家j,这样就能保证,每两个国家都在相邻层有一个
     6 接触了,哇,瞬间感觉智商不够用了,题目看起来复杂,有时候要耐心分析一下,试试不同的角度。
     7 错误总结 见注释 
     8 */ 
     9 #include<cstdio>
    10 
    11 int main()
    12 {
    13     int i,j;
    14     char map1[52][55];
    15     char map2[52][55];
    16     char list[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";//字符串数组初始化 
    17     for(i=0;i<52;i++){
    18         for(j=0;j<52;j++)
    19             map1[i][j]=list[i];
    20     }
    21     for(i=0;i<52;i++){
    22         for(j=0;j<52;j++)
    23             map2[j][i]=list[i];//下标使用 
    24     }    
    25     
    26     int n;
    27     while(scanf("%d",&n) != EOF){
    28         printf("2 %d %d
    ",n,n);
    29         for(i=0;i<n;i++){
    30             for(j=0;j<n;j++){
    31                 printf("%c",map1[i][j]);
    32             }
    33             printf("
    ");
    34         }
    35         printf("
    ");
    36         for(i=0;i<n;i++){
    37             for(j=0;j<n;j++){
    38                 printf("%c",map2[i][j]);
    39             }
    40             printf("
    ");
    41         }
    42     }
    43     return 0;
    44 }
  • 相关阅读:
    封装了一个简单的筛选菜单控件
    安卓存储资源
    处理webp加所有的jpg到指定路径
    苹果内购
    JavaScript关于md5加密
    JavaScript关于sha1加密
    h5跳转
    python遍历文件(替换)
    python遍历文件
    安卓点击home键重启
  • 原文地址:https://www.cnblogs.com/wenzhixin/p/8733427.html
Copyright © 2011-2022 走看看