这道题要求n个国家,在一栋大楼里,大楼可以有很多层,每一层每个国家可以有很多办公室,但必须要保证每两个国家之间至少要有一个办公室是两两相连的,两两相连其实就在暗示,有两层,第一层的第i行全部为第i个国家,第二层的第j列全部为第j个国家,这样就特别简单了,只要设一个常量数组,从A~z,((记得所有元素加引号),另外记得要看清每次输出需不需要和上次输出之间有空格,还有看清要输出什么,是不是把要求输出的全部输出了;)然后就来两个嵌套for循环,第一次输出Ans[i],再来两个嵌套for循环,输出A[j],这样就ok了;
#include<iostream>
using namespace std;
char Ans[] = {"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"};
int main()
{
int n;
while(scanf("%d",&n) == 1)
{
printf("2 %d %d\n",n,n);
for(int i = 0; i < n; i++)
{
for(int j = 0; j < n; j++)
{
printf("%c",Ans[i]);
}
printf("\n");
}
printf("\n");
for(int i = 0; i < n; i++)
{
for(int j = 0; j < n; j++)
{
printf("%c",Ans[j]);
}
printf("\n");
}
}
return 0;
}