백준 문제풀이
5525 - IOIOI (S1) / 문자열
RonLee
2022. 9. 22. 18:37
"""
5525 - IOIOI (S1)
"""
# 1. 입력
N = int(input())
sep = ["I", "O", "I"]
for _ in range(1, N):
sep.append("O")
sep.append("I")
sep_len = len(sep)
arr_len = int(input())
arr = list(input())
count = 0
for i in range(arr_len - sep_len):
if arr[i : (i + sep_len)] == sep:
count += 1
print(count)
1. 첫 번째 시도 : 50 점
- sep 리스트와 arr 리스트 생성
- arr리스트를 인덱스들을 하나하나 돌면서 sep과 같은 것 찾기
- 문자열이 길어지면 timeout 나는 듯?
"""
5525 - IOIOI (S1)
"""
N = int(input())
arr_len = int(input())
arr = input()
result = 0
count = 0
i = 0
while i < arr_len:
if arr[i : i + 3] == "IOI":
i += 2
count += 1
if N == count:
result += 1
count -= 1
else:
i += 1
count = 0
print(result)
- 리스트 생성 X
- 문자열 0 번 인덱스부터 보기
* IOI 찾기 -> 찾으면 인덱스 번호인 i 변수 +2
-> 못 찾으면 i 변수 +1
* result, count 변수 활용 / while 문 -> 조건문