#include<bits/stdc++.h>
using namespace std;
string L[4] = {"", "PA", "PPAA", "PPPAPAAA"};
const string PATTERN = "PAAPAP";
string word(int n, int k) {
if ((k == 1 && n > 2) || (k == 2 && n > 4) || (k == 3 && n > 8)) {
return "NIE";
}
if (n < k) {
return "NIE";
}
if (k <= 3) {
return L[k].substr(0, n);
}
if (k == 4) {
int i = 6;
string s = PATTERN;
while (i < n) {
s += PATTERN;
i += 6;
}
return s.substr(0, n);
}
string wd = "";
if (k == 5) {
wd = "PPPP";
} else {
wd = "A";
for (int i = 1; i < k; i++) {
wd += "A";
}
}
int i = wd.size();
while (i < n) {
i += 6;
wd += PATTERN;
}
return wd.substr(0, n);
}
int main() {
std::ios_base::sync_with_stdio(false);
std::cin.tie(NULL);
int t;
cin >> t;
for (int i = 0; i < t; i++) {
int n, k;
cin >> n >> k;
string w = word(n, k);
cout << w << "\n";
}
}
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 | #include<bits/stdc++.h> using namespace std; string L[4] = {"", "PA", "PPAA", "PPPAPAAA"}; const string PATTERN = "PAAPAP"; string word(int n, int k) { if ((k == 1 && n > 2) || (k == 2 && n > 4) || (k == 3 && n > 8)) { return "NIE"; } if (n < k) { return "NIE"; } if (k <= 3) { return L[k].substr(0, n); } if (k == 4) { int i = 6; string s = PATTERN; while (i < n) { s += PATTERN; i += 6; } return s.substr(0, n); } string wd = ""; if (k == 5) { wd = "PPPP"; } else { wd = "A"; for (int i = 1; i < k; i++) { wd += "A"; } } int i = wd.size(); while (i < n) { i += 6; wd += PATTERN; } return wd.substr(0, n); } int main() { std::ios_base::sync_with_stdio(false); std::cin.tie(NULL); int t; cin >> t; for (int i = 0; i < t; i++) { int n, k; cin >> n >> k; string w = word(n, k); cout << w << "\n"; } } |
English