투포인터를 사용하여 풀었다.
left <= right인 경우는 구간합을 그대로 정답에 추가해주고
left > right인 경우는 총합-구간합(=left~right 합)을 정답에 추가해준다.
최종 집합의 길이를 리턴하면 정답!
def solution(elements):
answer = set()
length = len(elements)
for i in range(length):
left,right = (i,i)
for j in range(length):
if left <= right:
answer.add(sum(elements[left:right+1]))
else:
answer.add(sum(elements)-sum(elements[right+1:left]))
right += 1
right %= length
return len(answer)