✏️ 오늘의 문제 : 1529. Minimum Suffix Flips
📌 주안점
- i번째 index에서 flip할 경우 i~n-1까지의 원소 전부 flip된다는 것.
- 순서대로 (1~n-1) 다 flip하는 수 밖에 없다.
- 실제로 비트를 변경할 필요 없이, target[i]와 현재 몇번 flip했는지의 정보만 있으면 된다.
- for문 한번으로 해결
class Solution(object):
def minFlips(self, target):
cnt = 0
tLen = len(target)
for i in range(tLen):
#i = 1, cnt = even
if target[i] == "1" and cnt % 2 == 0:
cnt+=1
#i = 0, cnt = odd
elif target[i] == "0" and cnt % 2 == 1:
cnt+=1
return cnt
- 작성하고보니, cnt%2값과 target의 값을 비교해서 다르다면 cnt+=1해주는 것으로 표현하는게 더 빠를것 같다.
- 가독성 측면에선, 그대로 하는게 나을것 같다.
'알고리즘 > TIL' 카테고리의 다른 글
[99클럽 코테 스터디 31일차 TIL] 정렬 (0) | 2024.06.20 |
---|---|
[99클럽 코테 스터디 30일차 TIL] 문자열 (1) | 2024.06.19 |
[99클럽 코테 스터디 28일차 TIL] 문자열 (0) | 2024.06.18 |
[99클럽 코테 스터디 28일차 TIL] 배열 (0) | 2024.06.17 |
[99클럽 코테 스터디 27일차 TIL] 배열, xor (1) | 2024.06.15 |