[Python] BOJ 16120 - PPAP
728x90
반응형
https://www.acmicpc.net/problem/16120
# 스택문제이다.
https://www.acmicpc.net/problem/9935
BOJ 9935번: 문자열 폭발과 같은 알고리즘으로 풀면된다.
# 문자열 s를 입력받고 s의 첫문자부터 stack에 넣는다. 넣는 과정에서 stack[-1]이 'P'이고
현재 스택의 마지막 4개의 원소가 'PPAP'이면 del stack[-4: ]를 통해 'PPAP'를 날려주고
'P'를 stack에 넣어주는 것을 반복한다.
# 모든 과정이 끝난뒤 stack에 'PPAP'가 남아있거나, 'P'가 남아있으면 'PPAP'를 출력하고
아니면 'NP'를 출력한다.
s = input()
stack = []
for i in range(len(s)):
stack.append(s[i])
if stack[-1] == 'P' and stack[-4: ] == list('PPAP'):
del stack[-4: ]
stack.append('P')
if stack == list('PPAP') or stack == list('P'):
print('PPAP')
else:
print('NP')
(solved.ac 티어: 골드 4)
728x90
반응형
'문제풀이 > BaekjoonOnlineJudge' 카테고리의 다른 글
[Python] BOJ 1890 - 점프(Jump the Board!) (0) | 2021.06.11 |
---|---|
[Python] BOJ 2002 - 추월(TUNNEL) (0) | 2021.06.09 |
[Python] BOJ 2346 - 풍선 터뜨리기 (0) | 2021.06.08 |
[Python] BOJ 2841 - 외계인의 기타 연주(GITARA) (0) | 2021.06.06 |
[Python] BOJ 12789 - 도키도키 간식드리미 (0) | 2021.06.06 |
TAGS.