728x90

시간 초과가 났다. 투 포인터를 이용해서 푸는 문제라고 한다. 투 포인터 개념은 이해가 되지만 구현은 아직 헷갈린다.

def solution(sequence, k):
    answer = []
 
    index = 0
 
    while True:
 
        if index == len(sequence):
            break
 
        sums = 0 
 
        for i in range(index,len(sequence)):
 
            if len(answer)!=0 and (i-index-1)>answer[0][0]:
                break
 
 
 
            sums += sequence[i]
 
            if sums>k:
                break
 
            if sums == k:
                answer.append([i-index,index,i])
                break
 
        index += 1
 
    answer = list(sorted(answer))
 
 
    return [answer[0][1],answer[0][2]]
728x90

+ Recent posts