이번 문제는 초기의 문자열 s를 B로 채운 뒤에 s의 각 문자들을 편하게 변경하기 위해 리스트로 변경하고 s를 순회하며 현재 위치의 문자를 A로 수정한 뒤 s를 순회하며 현재 위치의 문자가 A일 때 뒤에 존재하는 B의 갯수를 더하여 이 누적된 합과 k를 비교하는 방식으로 문자열 s를 수정하여 해결하였다.
n , k = map(int,input().split())
s = 'B'*n
s = list(s)
def check(word):
cnt = 0
for i in range(len(word)-1):
if word[i] == 'A':
for j in range(i+1,len(word)):
if word[j] == 'B':
cnt += 1
return cnt
for i in range(n):
s[i] = 'A'
if check(s) == k:
break
elif check(s) > k:
s[i] = 'B'
answer = "".join(s)
if answer=='B'*n or answer=='A'*n:
if k == 0:
print(answer)
else:
print(-1)
else:
print(answer)