import sys
def solve():
d = sys.stdin.read().split()
if not d: return
t = int(d[0])
queries = [(int(d[i]), int(d[i+1])) for i in range(1, 2 * t, 2)]
max_tm = max([n - k for n, k in queries if k >= 4] + [0])
B = "A"
tr = str.maketrans("AP", "PA")
while len(B) <= max_tm:
B += B.translate(tr)
B = B[1:]
small = {1: "AP", 2: "AAPP", 3: "AAAPAPPP"}
for n, k in queries:
if k < 4:
s = small[k]
print(s[:n] if n <= len(s) else "NIE")
else:
print("A" * k + B[:n-k])
if __name__ == '__main__':
solve()
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 | import sys def solve(): d = sys.stdin.read().split() if not d: return t = int(d[0]) queries = [(int(d[i]), int(d[i+1])) for i in range(1, 2 * t, 2)] max_tm = max([n - k for n, k in queries if k >= 4] + [0]) B = "A" tr = str.maketrans("AP", "PA") while len(B) <= max_tm: B += B.translate(tr) B = B[1:] small = {1: "AP", 2: "AAPP", 3: "AAAPAPPP"} for n, k in queries: if k < 4: s = small[k] print(s[:n] if n <= len(s) else "NIE") else: print("A" * k + B[:n-k]) if __name__ == '__main__': solve() |
English