首页 > 其他 > 详细

[2016-03-04][UVA][1605][Building for UN]

时间:2016-03-04 22:35:27      阅读:278      评论:0      收藏:0      [点我收藏+]
[2016-03-04][UVA][1605][Building for UN]
  • 时间:2016-03-04 20:24:38 星期五
  • 题目编号:UVA 1605
  • 题目大意:给定n个国家,加你建设联合国大楼,大楼每个格子为一个office,要求每个国家的office都互相相邻,输出所有可能
  • 输入:若干个n
  • 输出:建设大楼的h w l层数行数列数
  • 方法:建成n*n的国家,第i个国家,分配第一层的i行和第二层的j列给它

#include <vector>
#include <list>
#include <map>
#include <set>
#include <deque>
#include <queue>
#include <stack>
#include <bitset>
#include <algorithm>
#include <functional>
#include <numeric>
#include <utility>
#include <sstream>
#include <iostream>
#include <iomanip>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <cctype>
#include <string>
#include <cstring>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <ctime>
using namespace std;
typedef long long LL;
#define CLR(x,y) memset((x),(y),sizeof((x)))
#define FOR(x,y,z) for(int (x)=(y);(x)<(z);++(x))
#define FORD(x,y,z) for(int (x)=(y);(x)>=(z);--(x))
#define FOR2(x,y,z) for((x)=(y);(x)<(z);++(x))
#define FORD2(x,y,z) for((x)=(y);(x)>=(z);--(x))


const int maxn = 51;
char res[2][maxn][maxn];
int main(){
        //freopen("in.txt","r",stdin);
        //freopen("out.txt","w",stdout);
    int n;
        bool flg = 0;
    while(~scanf("%d",&n)){
                if(flg) puts("");
                CLR(res,0);
        FOR(i,0,n){
            FOR(j,0,n){
                res[0][i][j] = i + (i >=26?‘a‘-26:‘A‘);
                res[1][i][j] = j + (j >=26?‘a‘-26:‘A‘);
            }
        }
                printf("%d %d %d\n",2,n,n);
                FOR(k,0,2){
                        FOR(i,0,n){
                                puts(res[k][i]);
                        }
                        puts("");
                }
                flg = 1;
    }
    return 0;
}  









[2016-03-04][UVA][1605][Building for UN]

原文:http://www.cnblogs.com/qhy285571052/p/5243467.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!