-코드
n, k = map(int, input().split())
arr = [[1 for _ in range(i)] for i in range(1, n + 1)]
for i in range(2, n):
for j in range(1, i):
arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j]
print(arr[n - 1][k - 1])
파스칼의 삼각형을 만들기위해 arr[i][0]과 arr[i][i]가 1이어야 하므로 주어진 범위를 모두 1로 만들기 위해 arr을 n값에 따라 1로 초기화하는 법을 햍갈려서 찾아서 해결하였고 2번째 줄부터 수식이 적용되야 하므로 범위를 2<= i <= n로 하고 j는 i번째 줄의 1번째값과 마지막 값은 1이어야 하므로 2번째 값부터 적용해야 하므로 1 <= j <= i - 1로 하여 범위를 지정하고 파스칼의 삼각형 공식은 아래 수식이므로 값을 입력하여 해결하였습니다.
출처:https://ko.wikipedia.org/wiki/%ED%8C%8C%EC%8A%A4%EC%B9%BC%EC%9D%98_%EC%82%BC%EA%B0%81%ED%98%95
'Beakjoon&프로그래머스 > 파이썬' 카테고리의 다른 글
[백준/파이썬]14916번 거스름돈 (0) | 2021.07.29 |
---|---|
[백준/파이썬]9655번 돌 게임 (0) | 2021.07.29 |
[백준/파이썬]15881번 Pen Pineapple Apple Pen (0) | 2021.07.28 |
[백준/파이썬]1010번 다리 놓기 (0) | 2021.07.27 |
[백준/파이썬]13301번 타일 장식물 (0) | 2021.07.27 |