백준|19941번|햄버거 분배

JSK·2022년 7월 31일
0

파이썬 PS풀이

목록 보기
74/136

문제설명
벤치의 길이와 사람들이 햄버거를 가져올 수 있는 거리 K를 입력받고 햄버거와 사람의 배치를 입력받았을 때 최대 몇명의 사람이 햄버거를 먹을수 있는지 출력하는 문제입니다.

작동 순서
1. 벤치의 길이와 사람들이 햄버거를 가져올 수 있는 N, K를 입력받습니다.
2. 벤치의 사람과 햄버거의 배치를 입력받습니다.
3. 벤치에 있는 것이 사람일 경우 그 사람의 근처를 탐색하고 햄버거가 있을 경우 count를 +1 해주고 그 위치의 햄버거를 먹은 것으로 처리해줍니다.(N으로 변경)
4. 벤치를 모두 탐색한 뒤 count를 출력합니다.

소스코드

import sys
N, K = map(int, sys.stdin.readline().split())
strInput = list(sys.stdin.readline().rstrip())
count = 0

if N < K:
    K = N

for i in range(N):
    if strInput[i] == "P":
        for j in range(-K, K+1):
            if 0 <= i+j < N:
                if strInput[i+j] == "H":
                    count += 1
                    strInput[i+j] = "N"
                    break

print(count, end="")
profile
학사지만 AI하고 싶어요...

0개의 댓글