在学校的oj平台上编译的,答案没错,就是现实格式错误,想像各位请教
Input
输入包含多组测试数据。第一个整数N(N<=15),N表示组数,每组数据包含两个整数a,b。a表示一个单位的DNA串的行数,a为奇数且 3<=a<=39。b表示重复度(1<=b<=20)。
Output
输出DNA的形状,每组输出间有一空行。
Sample Input
2
3 1
5 4
Sample output
#include <iostream>
using namespace std;
void smallx(int);
int main(void) {
int N;
int* a, * b;
cin >> N;
a = new int[N];
b = new int[N];
if (N > 0 && N < 16) {
for (int l = 0; l < N; l++) {
cin >> a[l] >> b[l];
}
for (int l = 0; l < N;l++) {
if (a[l] % 2 != 0 && a[l] > 2 && a[l] < 40 && b[l]>0 && b[l] < 21) {
for (int j = 0; j < b[l]; j++) {
cout << 'X';
for (int k = 0; k < a[l] - 2; k++) {
cout << ' ';
}
cout << 'X'<<endl;
smallx(a[l]);
}
cout << 'X';
for (int k = 0; k < a[l] - 2; k++) {
cout << ' ';
}
cout << 'X';
if(l!=N-1)
cout << endl<<endl;
}
else {
cout << "wrong" << endl;
}
}
}
return 0;
}
void smallx(int a) {
for (int i = 0; i < a - 2; i++) {
char *square=new char[a];
for (int j = 0; j < a; j++) {
square[j] = ' ';
}
square[i + 1] = 'X';
square[a - 2 - i] = 'X';
for (int i = 0; i < a; i++) {
cout << square[i];
}
cout << endl;
}
}