1. P에서 시작하므로 길이는 1 + 3*x이다.
2. P를 만날때 마다 tmp를 올려준다.
3. A를 만났을때 tmp가 2이상이고 뒤의 문자가 P이면 tmp를 2 내려준다.
4. 마지막 tmp의 길이가 1이아니면 정답이아니다.
s = input()
tmp = 0
ans = 'PPAP'
if len(s) % 3 == 1:
for i in range(len(s)):
if s[i] == 'A':
if i+1 < len(s) and tmp >= 2 and s[i+1] == 'P':
tmp -= 2
else:
ans = 'NP'
break
else:
tmp += 1
else:
ans = 'NP'
if tmp != 1:
ans = 'NP'
print(ans)
'알고리즘 > BOJ' 카테고리의 다른 글
[Python] 백준 1826: 연료채우기 (0) | 2021.09.14 |
---|---|
[Python] 백준 2613: 숫자구슬 (0) | 2021.09.14 |
[Python] 백준 1285번: 동전 뒤집기 (0) | 2021.09.14 |
[Python] 백준 1135번: 뉴스 전하기 (0) | 2021.09.14 |
[Python] 백준 3687번: 박스 채우기 (0) | 2021.09.14 |
댓글