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
#define FOR(i,a,b) for(int i=(int)(a); i<(int)(b); ++i)
#include <cstdio>
using namespace std;

int t, n, k;
char result[1000005];
char pattern[7] = "PAPPAA";

int main() {
    scanf("%d", &t);
    while(t--){
        scanf("%d %d", &n, &k);

        if (2*k>=n) {
            FOR(i,0,k) result[i]='A';
            FOR(i,k,n) result[i]='P';
            result[n]=0;
            printf("%s\n", result);
        }
        else if (n==7 && k==3) printf("AAAPAPP\n");
        else if (n==8 && k==3) printf("AAAPAPPP\n");
        else if (n<9 || k<4) printf("NIE\n");
        else {
            FOR(i,0,k) result[i]='A';
            int pos=0;
            FOR(i,0,n-k) {
                result[k+i]=pattern[pos++];
                if (pos==6) pos=0;
            }
            result[n]=0;
            printf("%s\n", result);
        }
    }
}