반응형
코드
n = int(input())
n_list = input()
color = [0,0]
if n_list[0] == 'R':
color[0]+=1
else:
color[1]+=1
for i in range(1,n):
if n_list[i] == 'R':
if n_list[i-1] != n_list[i]:
color[0]+=1
elif n_list[i] == 'B':
if n_list[i-1] != n_list[i]:
color[1]+=1
print(min(color[0],color[1])+1)
설명
빨간색으로 모든 문제를 칠하고 나중에 파란색을 칠하는 횟수와, 파란색으로 모든 문제를 칠하고 나중에 빨간색을 칠하는 횟수 중 더 작은 값을 출력해주면 된다.
for문을 이용해 현재 색깔이 그 전과 다르면 해당 색의 작업 횟수를 늘려준다.
반응형
'알고리즘 > 그리디' 카테고리의 다른 글
[백준][Python] 21314번 민겸 수 (0) | 2022.04.08 |
---|---|
[백준][Python] 16953번 A → B (0) | 2022.04.07 |
[백준][Python] 1541번 잃어버린 괄호 (0) | 2022.04.05 |
[백준][Python] 11047번 동전 0 (0) | 2022.04.01 |
[백준][Python] 20300 서강근육맨 (0) | 2022.03.31 |
댓글