-
[파이썬] 리트코드 119. Pascal's Triangle II 풀이기타/알고리즘 2021. 9. 23. 12:24반응형
https://leetcode.com/problems/pascals-triangle-ii/
정석적인 재귀함수 문제다
다만 리트코드의 경우 함수 형태로 제출해야하기 때문에
재귀를 이용할 때 self.을 붙여줘야 한다는 점이 중요하다
1. 각각의 행은 가장 앞과 뒤가 1로 구성되고
2. 그 사이에는 이전 행의 요소들을 두 개씩 순서대로 더한 값이 들어간다
3. 이 과정을 재귀함수로 작성하면 된다
class Solution: def getRow(self, rowIndex: int) -> List[int]: if rowIndex == 0: return [1] if rowIndex == 1: return [1,1] prev_answer = self.getRow(rowIndex-1) answer = [] answer.append(1) for i in range(rowIndex-1): answer.append(prev_answer[i] + prev_answer[i+1]) answer.append(1) return answer
반응형'기타 > 알고리즘' 카테고리의 다른 글
[파이썬] 리트코드 1991. Find the Middle Index in Array 풀이 (0) 2021.09.27 [파이썬] 리트코드 724. Find Pivot Index 풀이 (0) 2021.09.27 [파이썬] 리트코드 830. Positions of Large Groups 풀이 (0) 2021.09.21 [파이썬] 리트코드 1413. Minimum Value to Get Positive Step by Step Sum 풀이 (0) 2021.09.20 [파이썬] 리트코드 941. Valid Mountain Array 풀이 (0) 2021.09.20