1155: DNA [水题]
题目描述
小强从小就喜欢生命科学,他总是好奇花草鸟兽从哪里来的。
终于, 小强上中学了,接触到了神圣的名词——DNA。
DNA有一个双螺旋的结构,这让一根筋的小强抓破头皮,“要是能画出来就好了” ,小强喊道。
现在就请你帮助他吧。
输入
输入包含多组测试数据。
第一个整数NN(N≤15N≤15),NN表示组数,每组数据包含两个整数aa,bb。
aa表示一个单位的DNA串的行数,aa为奇数且3≤a≤393≤a≤39。
bb表示重复度(1≤b≤201≤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
思路:看着比较麻烦,但是写着还是比较简单,对着输出一点点改的。
#include<stdio.h>
#include<string.h>
#include<math.h>
int
main()
{
int
t,n,m,i,j,k,p,p2,a,b,c,d=0,e;
scanf
(
"%d"
,&t);
while
(t--)
{
if
(d>0)
printf
(
"\n"
);
scanf
(
"%d %d"
,&m,&n);
for
(k=0;k<n;k++)
{
p=m;
for
(i=0;i<m/2+1;i++)
{
p=p-2;
a=p;
p2=i;
while
(p2--)
{
printf
(
" "
);
}
if
(i<m/2)
printf
(
"X"
);
while
(a--,a>=0)
{
printf
(
" "
);
}
if
(i<=m/2)
printf
(
"X\n"
);
}
p=m/2;
for
(j=0;j<m/2-1;j++)
{
p=p-1;
p2=j+j+1;
a=p;
while
(a--,a>=0)
{
printf
(
" "
);
}
printf
(
"X"
);
while
(p2--)
{
printf
(
" "
);
}
printf
(
"X\n"
);
}
}
printf
(
"X"
);
for
(i=0;i<m-1-1;i++)
{
printf
(
" "
);
}
printf
(
"X\n"
);
d++;
}
return
0;
}