[白俊2775]私は女性会長になります.


🔴 質問する



🟢 に答える


試験例としては,与えられた入力の最大層数と最大数のみを求め,残りのケースは1回出力する.max_kは最大層数、max_nは最大湖である.
各階の世帯数をtempリストに入れ、1階の計算が完了したら、フロアリストに繰り返し追加します.
import sys

T = int(sys.stdin.readline())
cases = []
max_k = max_n = 0
for i in range(T):
    k = int(sys.stdin.readline())
    n = int(sys.stdin.readline())
    cases.append([k, n])
    if k > max_k: max_k = k
    if n > max_n: max_n = n

floors = [[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]]
for k in range(max_k):
    temp = [0]
    for n in range(max_n):
        temp.append(temp[n] + floors[k][n + 1])
    floors.append(temp)

for c in cases:
    print(floors[c[0]][c[1]])