여러 개의 사과, 파인애플, 그리고 펜이 일렬로 세워져 있다. 이 물건들의 순서를 바꾸지 않고 옆에 있는 물건끼리 연결했을 때, 펜-파인애플-애플-펜을 몇 개나 만들 수 있을지 세어보자.
단, 펜, 파인애플, 사과, 펜 순서로 연결된 네 개의 물건만을 펜-파인애플-애플-펜으로 인정하며, 하나의 펜이 두 개의 펜-파인애플-애플-펜에 포함될 수 없다. 또한 펜, 사과, 파인애플, 펜 순서로 연결된 네 개의 물건은 펜-파인애플-애플-펜이 아니다.
입력
첫 번째 줄에 물건의 총 개수 n이 주어진다. (1 ≤ n ≤ 1,000,000)
두 번째 줄에 물체의 목록이 길이 n의 문자열로 주어진다. 사과는 A로, 파인애플은 P로, 펜은 p로 대소문자를 구분하여 표기한다.
출력
만들 수 있는 펜-파인애플-애플-펜의 최대 개수를 출력한다.
코드
import sys
if __name__ == '__main__':
N = int(input())
str = sys.stdin.readline().rstrip()
answer = str.count("pPAp")
print(answer)
풀이
sys.stdin.readline()으로 한 줄을 입력받고 rstrip()으로 뒤 개행을 제거해준다.
문자열 안에서 찾고 싶은 문자의 개수를 찾아주는 count 함수를 이용해 입력받은 string에서 pPAp의 개수를 세서 print한다.
728x90
'Algorithm > 백준' 카테고리의 다른 글
[백준][Python] 13251. 조약돌 꺼내기 (0) | 2022.03.14 |
---|---|
[백준][Java] 2750. 수 정렬하기 (0) | 2022.03.08 |
[백준][Java] 10989. 수 정렬하기 3 (0) | 2022.03.07 |
[백준][Python] 1436. 영화감독 숌 (2) | 2022.03.05 |
[백준][Java] 1018. 체스판 다시 칠하기 (0) | 2022.03.03 |