0층은 1~n호에 각 호에 대응되는 인원이 거주한다.
각 층의 1호에는 1명만 산다.
1층의 2호는 0층의 1호와 2호를 합하면 된다. 배열로 표현하면 arr[1]+=arr[0]이다.
0층부터 k층까지의 n호를 쭉 구하면 배열이 갱신되면서 각 층의 각 호에 사는 사람들이 나온다.
마지막으로 나온 배열의 마지막 인덱스에 있는 값이 찾고자 하는 값이 된다.
4층 |
1 |
6 |
21 |
56 |
126 |
3층 |
1 |
5 |
15 |
35 |
70 |
2층 |
1 |
4 |
10 |
20 |
35 |
1층 |
1 |
3 |
6 |
10 |
15 |
0층 |
1 |
2 |
3 |
4 |
5 |
1호 | 2호 | 3호 | 4호 | 5호 |
t=int(input())
for i in range(t):
k=int(input())
n=int(input())
arr=[j for j in range(1,n+1)]
for l in range(k):
for j in range(n-1):
arr[j+1]+=arr[j]
#print(arr)
print(arr[-1])
'알고리즘 문제' 카테고리의 다른 글
프로그래머스 전화번호 목록 (0) | 2019.08.28 |
---|---|
프로그래머스 완주하지 못한 선수 (0) | 2019.08.27 |
백준 1193번 분수찾기 (0) | 2018.11.04 |
백준 1316번 그룹 단어 체커 (0) | 2018.11.03 |
백준 2941번 크로아티아 알파벳 (0) | 2018.11.03 |