📝 문제
💡아이디어
문제에 자신의 아래층(a-1)의 1호부터 b호까지 사람들의 수를 다합한게 a층b호의 사람수라고 주어져있다 -> (a-1,1)+(a-1,2)+...+(a-1,b)=(a,b) :재귀
👩🏻💻 풀이코드
def count(k,n):
cnt = 0
if k==0:
return n
else:
for i in range(1, n+1):
cnt += count(k-1,i)
return cnt
T = int(input())
for _ in range(T):
k = int(input())
n = int(input())
print(count(k,n))
🔍 후기
재귀로 풀이하면 pypy3로는 정답이지만 python3로는 시간초과가 난다
처음 풀이할 때는 다른 방법이 생각나지 않아 python3로는 제출을 하지 못했다. 다른 풀이방법을 생각해보자