파이썬 알고리즘

재귀함수로 누적합 구하기

뜻 지, 깨달음 오 2022. 10. 31. 21:47

arr = [3, 4, 5, 1, 6, 9]

출력된 결과: 3 7 12 13 19 28

 

1. sum을 전역변수로 두고 하는 방법

sum=3
def abc(level):
    global sum
    if level==5:
        print(sum)
        return
    print(sum)
    sum+=arr[level+1]
    abc(level+1)
abc(0)

 

2. sum을 매개변수로 두고 하는 방법1

def abc(level,sum):
    if level==5:
        print(sum)
        return
    print(sum)
    abc(level+1,sum+arr[level+1])

abc(0,3) # level sum

 

3.  sum을 매개변수로 두고 하는 방법2

def abc(level,sum):
    print(sum)
    if level==5:
        return
    abc(level+1,sum+arr[level+1])

abc(0,3) # level sum
# 3 = arr[0]

 

 

'파이썬 알고리즘' 카테고리의 다른 글

재귀 심화: 조합과 중복조합  (0) 2022.10.31
재귀로 순열 풀어보기  (0) 2022.10.31
SWEA 1208 Flatten  (0) 2022.10.31
[파이썬] SWEA 4408 자기 방으로 돌아가기  (0) 2022.10.31
[파이썬] SWEA 11671 기지국  (0) 2022.10.31