[백준] 1439번 뒤집기

거북이·2023년 1월 3일
0

백준[실버5]

목록 보기
37/114
post-thumbnail

💡문제접근

처음에는 각 문자열을 돌면서 값이 달라지는 기점에서 값들을 리스트에 저장하면서 하려고 했으나 한계에 부딪혀 일반화의 방법을 이용했다.

예시변화횟수최소 뒤집기 횟수
000
0111
01021
010132
0101042
01010153
010101063

위 표에서 보면 변화횟수가 홀수인 경우 최소 뒤집기 횟수는 변화횟수를 최소 뒤집기 횟수로 나눈 몫에 1을 더해주면 되고 변화횟수가 짝수인 경우 최소 뒤집기 횟수는 변화횟수를 최소 뒤집기 횟수로 나눈 몫이 된다.

💡코드

S = input()

count = 0
for i in range(len(S)-1):
    if S[i] != S[i+1]:
        count += 1

if count % 2 == 0:
    print(count // 2)
else:
    print((count // 2) + 1)

💡소요시간 : 44m

0개의 댓글