문제링크 : https://www.acmicpc.net/problem/2775
간단한 dp문제인데
시간제한 1초에 층수 호수도 14층뿐이라 O(n^3)= 14세제곱 이어도 충분하길래 그냥 인원수 싹 다 구하고나서
결과값 출력했다.
인원수를 구하면서 한방에 리턴하는 방법으로도 할수있을것이다
내가 제출 한 코드
import sys
input = sys.stdin.readline
#테스트 케이스
t = int(input())
#층수 리스트
k_list = []
#호수 리스트
n_list = []
#입력
for _ in range(t):
k_list.append(int(input()))
n_list.append(int(input()))
#아파트 층수 0층~14층
a = [[] for _ in range(15)]
#0층 인원
for i in range(1,15):
a[0].append(i)
#아파트에 들어가야될 모든 사람 수 계산
for i in range(1,15):
for j in range(1, 15):
people = 0
for k in range(0, j):
people += a[i-1][k]
a[i].append(people)
#출력. 층수는 0층부터지만 호수는 1호부터시작이기때문에 호수-1
for i in range(t):
print(a[k_list[i]][n_list[i]-1])
'알고리즘' 카테고리의 다른 글
python 백준1010 다리 놓기(BOJ1010) (1) | 2023.01.04 |
---|---|
python 백준2748 피보나치 수 2(BOJ2748) (0) | 2023.01.03 |
python 백준11000 강의실 배정(BOJ11000) (0) | 2022.12.31 |
python 백준15686 치킨 배달(BOJ15686) (0) | 2022.12.29 |
python 백준9095 1, 2, 3 더하기(BOJ9095 ) (0) | 2022.12.29 |