oj平台上一直显示presentation error,求指正

在学校的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

img

#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;
    }
}