[프로그래머스] 연속 부분 수열 합의 개수 (Python) - Lv.2

서봉성·2022년 12월 27일
0

코딩테스트

목록 보기
5/27
post-thumbnail

문제


문제 풀이

  • 1개부터 수열의 길이의 개수까지 연속하는 부분의 수열을 더해서 리스트에 저장
  • set()함수를 사용하여 리스트에 존재하는 원소 중 중복을 허용하지 않는 개수를 구한다.

코드

def solution(elements):
    sum_list=[]
    elem_len=len(elements)
    
    for i in range(1,elem_len+1):   #더할 개수
        for j in range(elem_len):  #시작위치
            if j+i>elem_len:
                sum_list.append(sum(elements[j:])+sum(elements[:j+i-elem_len]))
            else:
                sum_list.append(sum(elements[j:j+i]))
        
    return len(set(sum_list))
profile
OverStudy

0개의 댓글