서론
없음.
문제
문제
주어진 문자열에서 연속 3개의 문자가 IOI 이거나 KOI인 문자열이 각각 몇 개 있는지 찾는 프로그램을 작성하라.
문자열은 알파벳의 대문자로만 이루어진다.
예를 들어 "KOIOIOI"라는 문자열은 KOI 1개 , IOI 2개가 포함되어있다.
입력형식
입력은 한 줄이며 10,000자 이하의 알파벳 대문자로 구성된다.
출력형식
출력은 2줄이며, 첫 번째 줄에는 KOI의 개수, 두 번째 줄에는 IOI의 개수를 각각 출력하라.
나의 풀이
a=input()
print((b:=[a[i-1]+a[i]+a[i+1] for i in range(1,len(a)-1)]).count('KOI'))
print(b.count('IOI'))
3개의 문자를 묵은 문자열을 한칸씩 이동하며 만든 b라는 리스트를 만들고 KOI와 IOI의 갯수를 count하였다.
+ 피드백과 새로운 풀이 방법은 언제든지 환영입니다!
'코딩테스트 > [python]정올' 카테고리의 다른 글
[python] 정올 1535 : 단어집합2 (0) | 2022.05.08 |
---|---|
[python] 정올 1880 : 암호풀기(Message Decoding) (0) | 2022.04.21 |
[python] 정올 2604 : 그릇 (0) | 2022.04.19 |
[python] 정올 1641 : 숫자삼각형 (0) | 2022.04.19 |
[python] 정올 1523 : 별삼각형1 (0) | 2022.03.23 |
댓글