1876 - DNA
时间限制 : 1 秒
内存限制 : 128 MB
小强从小就喜欢生命科学,他总是好奇花草鸟兽从哪里来的。终于, 小强上中学了,接触到了神圣的名词--DNA.它有一个双螺旋的结构。这让一根筋的小强抓破头皮,“要是能画出来就好了” 小强喊道。现在就请你帮助他吧
题目输入
输入包含多组测试数据。第一个整数N(N<=15),N表示组数,每组数据包含两个整数a,b。a表示一个单位的DNA串的行数,a为奇数且 3<=a<=39。b表示重复度(1<=b<=20)。
题目输出
输出DNA的形状,每组输出间有一空行。
输入/输出样例
输入格式
2 3 1 5 4
输出格式
X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X
C++解答
#include<iostream> using namespace std; int main() { int n,a,b; cin>>n; for (int k=1; k<=n; k++) { cin>>a>>b; if (a==1) //a==1 for (int i=1; i<=b; i++) cout<<"X"<<endl; else { cout<<"X"; for (int i=2; i<=a-1; i++) cout<<" "; cout<<"X"<<endl; //X的第一行 for (int t=1; t<=b; t++) //重复b次 { for (int i=2; i<=a/2; i++) //上半部分 { for (int j=1; j<=a; j++) if (i==j || i+j==a+1) cout<<"X"; else if (i+j<=a) cout<<" "; cout<<endl; } for (int i=a/2+1; i<=a; i++)//下半部分 { for (int j=1; j<=a; j++)//输出前面 if (i==j || i+j==a+1) cout<<"X"; else if (i>j) cout<<" "; cout<<endl; } } } if (k<n) cout<<endl; } return 0; }