class SummaryRanges: def __init__(self): self.visit = [0 for _ in range(10003)] def addNum(self, value: int) -> None: self.visit[value] = 1 def getIntervals(self) -> List[List[int]]: start = 0 ans = [] while start <= 10001: if self.visit[start] == 0: while start <= 10001 and self.visit[start] == 0: start += 1 if self.visit[start] == 1: cnt = 0 while self.visit[start + cnt] == 1: cnt += 1 ans.append([start, start+cnt-1]) start += cnt return ans아 이번에는 좀 부끄럽다. 고민하다가 일단 넣어봤는데 이게 되네 ㅅㅂ;최악의 케이스인 [1,1],[3,3],[5,5],[7,7], ... 같은걸 생각해보면 getInterval이 O(N)일거 같길래..릿코드는 일단 나이브도 통과시켜주고 최적화를 더 할 여지가 있는 문제가 많은거 같아
댓글 영역
획득법
① NFT 발행
작성한 게시물을 NFT로 발행하면 일주일 동안 사용할 수 있습니다. (최초 1회)
② NFT 구매
다른 이용자의 NFT를 구매하면 한 달 동안 사용할 수 있습니다. (구매 시마다 갱신)
사용법
디시콘에서지갑연결시 바로 사용 가능합니다.