본문 바로가기

알고리즘 문제

백준 2775번 부녀회장이 될테야

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])

https://www.acmicpc.net/problem/2775