PS/백준
[Python] 15904번 UCPC는 무엇의 약자일까?
s_omi
2024. 7. 19. 09:35
✏️ 문제
문제 파악
보자마자 아 그냥 find랑 rfind 써서 인덱스로 비교하면 되겠구나 했는데 결국 풀지 못했다.
질문 게시판에 있는 모든 반례
- UCPCC
- UCPPC
- UUCPC
- CUCPC
- UPCPC
를 적용해봤을 때 다 잘 나왔는데 ..
그래서 주어진 문장이 "UPCP" 문자열의 index로 비교하여 차례대로 나오는 지 확인하는 방법으로 풀었다.
알고리즘
- 그리디 알고리즘
- 문자열
코드
- 실패한 코드 - 반례 좀 찾아주세요 ..
s = input()
c_index = -1
p_index = -1
for i, char in enumerate(s):
if char == 'P' and i < s.rfind('C'):
p_index = i
for i, char in enumerate(s):
if char == 'C' and s.find('U') < i < p_index:
c_index = i
if s.find('U') < c_index < p_index < s.rfind('C'):
print("I love UCPC")
else:
print("I hate UCPC")
- 성공 코드
s = input()
target = "UCPC"
index = 0
for char in s:
if char == target[idx]:
index += 1
if index == len(target):
print("I love UCPC")
break
else:
print("I hate UCPC")