Menu
CoddyTech

Pascal's Triangle

파스칼의 삼각형에서 첫 번째 행은 [1]입니다. 그 뒤의 각 행은 항목이 하나 더 많고, 1로 시작하고 끝나며, 그 사이의 각 항목은 바로 위에 있는 두 항목의 합입니다. 정수 numRows가 주어집니다. 삼각형의 처음 numRows개 행을 맨 위 행부터 각 행을 정수 배열로 반환하세요.

함수

generate(numRows: integer) → integer-2d-array
numRowsinteger
삼각형을 만들 행의 수
반환값integer-2d-array
numRows개의 첫 번째 행, 맨 위 행부터

제약 조건

  • 1 ≤ numRows ≤ 30
  • 처음 30개 행의 모든 항목은 32비트 부호 있는 정수에 들어갑니다. 가장 큰 항목은 77558760이며, 30번째 행의 가운데에 있습니다.

예제

입력
numRows = 5
출력
[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]
설명
각 내부 항목은 바로 위에 있는 두 항목을 더한 값입니다. 네 번째 행: 3 = 1 + 2와 3 = 2 + 1. 다섯 번째 행: 4 = 1 + 3, 6 = 3 + 3, 4 = 3 + 1.
challenge icon

후속 질문

배열 하나만 유지하고 행마다 그 배열을 직접 업데이트할 수 있을까요? 내부 반복문은 어느 방향으로 실행해야 하며, 그 이유는 무엇인가요?

코드 초기화
def generate(numRows):
    # 여기에 코드를 작성하세요

테스트 #1

테스트 #2

인자

numRows = 5

예상 출력

[[1], [1, 1], [1, 2, 1], [1, 3, 3, 1], [1, 4, 6, 4, 1]]