1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#define _CRT_SECURE_NO_WARNINGS

#include<cstdio>
#include<string>
#include<print>

using namespace std;

int main() {
    string palindromy[9][9];
    for (int i = 0; i < 9; i++) {
        for (int j = 0; j < 9; j++) {
            palindromy[i][j] = "NIE";
        }
    }
    palindromy[1][1] = "A";

    palindromy[2][1] = "AP";
    palindromy[2][2] = "AA";

    palindromy[3][2] = "AAP";
    palindromy[3][3] = "AAA";

    palindromy[4][2] = "AAPP";
    palindromy[4][3] = "AAAP";
    palindromy[4][4] = "AAAA";

    palindromy[5][3] = "AAAPA";
    palindromy[5][4] = "AAAAP";
    palindromy[5][5] = "AAAAA";

    palindromy[6][3] = "AAAPAP";
    palindromy[6][4] = "AAAAPA";
    palindromy[6][5] = "AAAAAP";
    palindromy[6][6] = "AAAAAA";

    palindromy[7][3] = "AAAPAPP";
    palindromy[7][4] = "AAAAPAP";
    palindromy[7][5] = "AAAAAPA";
    palindromy[7][6] = "AAAAAAP";
    palindromy[7][7] = "AAAAAAA";

    palindromy[8][3] = "AAAPAPPP";
    palindromy[8][4] = "AAAAPAPP";
    palindromy[8][5] = "AAAAAPAA";
    palindromy[8][6] = "AAAAAAPA";
    palindromy[8][7] = "AAAAAAAP";
    palindromy[8][8] = "AAAAAAAA";

    int t;
    scanf("%d\n", &t);
    for (int i = 0; i < t; i++) {
        int k, n;

        scanf("%d %d", &n, &k);

        if (n < 9) {
            print("{}\n", palindromy[n][k]);
        }
        else {
            if (k < 4) {
                printf("NIE\n");
            }
            else {
                string suffix = "PAPPAA";
                for (int j = 0; j < k; j++) {
                    printf("A");
                }
                for (int s = k - k; s < n - k; s++) {
                    printf("%c", suffix.at(s % 6));
                }
                printf("\n");
            }
        }
    }

    return 0;
}