[백준] 12927번 배수 스위치

거북이·2023년 3월 13일
0

백준[실버4]

목록 보기
82/91
post-thumbnail

💡문제접근

  • 전구의 불이 이미 꺼져있는 상황이라면 굳이 다시 켤 필요가 없다.
  • 최소한의 횟수로 모든 전구를 끄려면 이미 전구가 켜져 있는 상태여야하며 전구가 켜져 있는 경우 스위치를 눌러 전구를 끄고 전구가 꺼져 있는 경우 스위치를 눌러 전구를 켜야한다.

💡코드(메모리 : 31256KB, 시간 : 40ms)

import sys
input = sys.stdin.readline

# 인덱스는 0부터 시작한다. 0의 배수란 개념은 존재하지 않으므로 앞에 문자 하나를 붙여준다.
light_bulb = [0] + list(input().strip())
N = len(light_bulb)
cnt = 0
for i in range(1, N):
    if light_bulb[i] == "Y":
        for j in range(i, N, i):
            if light_bulb[j] == "Y":
                light_bulb[j] = "N"
            else:
                light_bulb[j] = "Y"
        cnt += 1
    else:
        continue
print(cnt)

💡소요시간 : 4m

0개의 댓글