#include <cstdio>
#include <cstring>
static char word[1000 * 1000 + 42];
static const char* small_cases[4] = { "", "PA", "PPAA", "PPPAPAAA" };
static void solve() {
int n, k;
scanf("%d %d", &n, &k);
if (k < 4) {
if (strlen(small_cases[k]) < (size_t)n) {
puts("NIE");
return;
}
strncpy(word, small_cases[k], n);
} else {
for (int i = 0; i < k; i++) {
word[i] = 'P';
}
for (int i = k; i < n; i += 6) {
word[i+0] = 'A';
word[i+1] = 'P';
word[i+2] = 'A';
word[i+3] = 'A';
word[i+4] = 'P';
word[i+5] = 'P';
}
}
fwrite(word, sizeof(char), n, stdout);
putchar('\n');
}
int main() {
int t;
scanf("%d", &t);
while (t --> 0) {
solve();
}
return 0;
}
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 | #include <cstdio> #include <cstring> static char word[1000 * 1000 + 42]; static const char* small_cases[4] = { "", "PA", "PPAA", "PPPAPAAA" }; static void solve() { int n, k; scanf("%d %d", &n, &k); if (k < 4) { if (strlen(small_cases[k]) < (size_t)n) { puts("NIE"); return; } strncpy(word, small_cases[k], n); } else { for (int i = 0; i < k; i++) { word[i] = 'P'; } for (int i = k; i < n; i += 6) { word[i+0] = 'A'; word[i+1] = 'P'; word[i+2] = 'A'; word[i+3] = 'A'; word[i+4] = 'P'; word[i+5] = 'P'; } } fwrite(word, sizeof(char), n, stdout); putchar('\n'); } int main() { int t; scanf("%d", &t); while (t --> 0) { solve(); } return 0; } |
English