16395번: 파스칼의 삼각형 (acmicpc.net)
소스코드
코드설명
- n번째 행의 k번째 수를 찾기위해 n,k 입력 받음
- n이 1 또는 2이면 행에 1만 존재하기 때문에 k의 값과 없이 1 출력
- n이 3 이상일 때
- 2행 [1,1]인 dp 생성, dp를 copy한 dp2 생성
- 3행부터 생성하므로 3 <= i and i >= n 범위 내에서 반복
- dp2는 새로 생성한 행, dp는 새로운 행을 생성하기 위해 이용하는 행이므로 dp를 dp2로 업데이트
- fun(i) 함수를 이용해 새로운 행 dp2를 생성
- dp2는 전체의 i번째 행이고 처음과 끝은 1이므로 1이 i개 있는 리스트로 생성
- dp2의 index 범위 j >= 1 and j < i-1 내의 값을 이전 행의 인접한 두 수를 더한 값으로 업데이트
- 새로만든 행 dp2를 return
- n번째 행을 찾았다면 k번째 수를 print
'Koala - 10기 > 코딩테스트 준비 스터디' 카테고리의 다른 글
[백준/C++] 9251 : LCS (1) | 2023.03.17 |
---|---|
[백준/C++] 11726번 2xn 타일링 (0) | 2023.03.17 |
[백준/JAVA] #3273 두 수의 합 (0) | 2023.03.13 |
[백준/JAVA] #1931 회의실배정 (0) | 2023.03.13 |
[백준/Python] MooTube (Silver) 15591번 (0) | 2023.03.13 |