#include <cstdio>
#include <vector>
#include <string>
using namespace std;
void test_case() {
int n, k;
scanf("%d %d", &n, &k);
vector<vector<string> > small_results = {
{"P"},
{"PA", "PP"},
{"NIE", "PAA", "PPP"},
{"NIE", "PPAA", "PAAA", "PPPP"},
{"NIE", "NIE", "PAPPP", "PAAAA", "PPPPP"},
{"NIE", "NIE", "PAPAAA", "PAPPPP", "PAAAAA", "PPPPPP"},
{"NIE", "NIE", "PPAPAAA", "PAPAAAA", "PAPPPPP", "PAAAAAA", "PPPPPPP"},
{"NIE", "NIE", "PPPAPAAA", "PPAPAAAA", "PPAPPPPP", "PAPPPPPP", "PAAAAAAA", "PPPPPPPP"}
};
if (n <= 8) {
printf("%s\n", small_results[n - 1][k - 1].c_str());
return;
}
if (k <= 3) {
printf("NIE\n");
return;
}
for (int i = 0; i < k; ++i) {
printf("A");
}
vector<char> parts = {'P', 'A', 'P', 'P', 'A', 'A'};
for (int i = 0; i < n - k; ++i) {
printf("%c", parts[i % 6]);
}
printf("\n");
}
int main () {
int t;
scanf("%d", &t);
for (int i = 0; i < t; ++i) {
test_case();
}
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 44 45 | #include <cstdio> #include <vector> #include <string> using namespace std; void test_case() { int n, k; scanf("%d %d", &n, &k); vector<vector<string> > small_results = { {"P"}, {"PA", "PP"}, {"NIE", "PAA", "PPP"}, {"NIE", "PPAA", "PAAA", "PPPP"}, {"NIE", "NIE", "PAPPP", "PAAAA", "PPPPP"}, {"NIE", "NIE", "PAPAAA", "PAPPPP", "PAAAAA", "PPPPPP"}, {"NIE", "NIE", "PPAPAAA", "PAPAAAA", "PAPPPPP", "PAAAAAA", "PPPPPPP"}, {"NIE", "NIE", "PPPAPAAA", "PPAPAAAA", "PPAPPPPP", "PAPPPPPP", "PAAAAAAA", "PPPPPPPP"} }; if (n <= 8) { printf("%s\n", small_results[n - 1][k - 1].c_str()); return; } if (k <= 3) { printf("NIE\n"); return; } for (int i = 0; i < k; ++i) { printf("A"); } vector<char> parts = {'P', 'A', 'P', 'P', 'A', 'A'}; for (int i = 0; i < n - k; ++i) { printf("%c", parts[i % 6]); } printf("\n"); } int main () { int t; scanf("%d", &t); for (int i = 0; i < t; ++i) { test_case(); } return 0; } |
English