jm_p_op
.py 재귀함수(파스칼의 삼각형) 본문
같이한 팀원 : https://sogummi.tistory.com/113
idea
- n번째 list의 길이는 n이다
- list(n+1)번째의 m(>1)번째 요소는 list(n)의 m-1번째 요소와 m번째 요소를 더한것이다.
- list의 마지막은 1이다.
발전된 코드
def pas(list, line_num):
if len(list) == line_num:
return list
result = list[:]
for i in range(len(list)-1):
result[i+1] = list[i]+list[i+1]
result.append(1)
return pas(result, line_num)
a = pas([1], 9)
print(a)
팀원과 함께한 코드
def pascal(list,n):
if n > 1:
answer = []
answer.append(1)
for i in range(len(list)-1):
answer.append(list[i]+list[i+1])
answer.append(1)
n -= 1
return pascal(answer,n)
if n == 1:
return list
start_list=[1]
a=pascal(start_list, 8)
print("real_result",a)
'수학 > 알고리즘' 카테고리의 다른 글
알고리즘 .py (2) | 2023.05.04 |
---|---|
모의고사 해설 py. n진법=> 10진법 (0) | 2023.05.03 |
모이고사 해설6. [카카오 인턴] 수식 최대화 (2) | 2023.04.26 |
모의고사 해설 5. 로그인 성공? (0) | 2023.04.26 |
프로그래머스 - 이진수 더하기 (0) | 2023.04.23 |