题目地址:UVa 1605
一道答案特判的题。最简单的方法是只构造两层,第一层中第i行全是i国家,第二层中第i列全是i国家。这样就保证了所有的国家都会相邻。
代码如下:
#include <iostream> #include <cstdio> #include <string> #include <cstring> #include <stdlib.h> #include <math.h> #include <ctype.h> #include <queue> #include <map> #include <set> #include <algorithm> using namespace std; char get(int x) { if(x>26) return x-27+'A'; return x-1+'a'; } int main() { int n, i, j, k; char c; while(scanf("%d",&n)!=EOF) { printf("2 %d %d\n",n,n); for(i=1;i<=n;i++) { c=get(i); for(j=1;j<=n;j++) { printf("%c",c); } puts(""); } puts(""); for(i=1;i<=n;i++) { for(j=1;j<=n;j++) { c=get(j); printf("%c",c); } puts(""); } puts(""); } return 0; }
(白书训练计划)UVa 1605 Building for UN(构造法)
原文地址:http://blog.csdn.net/scf0920/article/details/39031591