結果
| 問題 | 
                            No.115 遠足のおやつ
                             | 
                    
| コンテスト | |
| ユーザー | 
                             | 
                    
| 提出日時 | 2021-01-16 16:58:56 | 
| 言語 | Python3  (3.13.1 + numpy 2.2.1 + scipy 1.14.1)  | 
                    
| 結果 | 
                             
                                MLE
                                 
                             
                            
                         | 
                    
| 実行時間 | - | 
| コード長 | 1,095 bytes | 
| コンパイル時間 | 305 ms | 
| コンパイル使用メモリ | 12,544 KB | 
| 実行使用メモリ | 1,642,940 KB | 
| 最終ジャッジ日時 | 2024-11-27 20:48:10 | 
| 合計ジャッジ時間 | 115,965 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge2 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 1 MLE * 2 | 
| other | AC * 13 TLE * 14 MLE * 13 | 
ソースコード
#region Header
#!/usr/bin/env python3
# from typing import *
import sys
import io
import math
import collections
import decimal
import itertools
from queue import PriorityQueue
import bisect
import heapq
def input():
    return sys.stdin.readline()[:-1]
sys.setrecursionlimit(1000000)
#endregion
# _INPUT = """10 9 3
# """
# sys.stdin = io.StringIO(_INPUT)
def main():
    N, D, K = map(int, input().split())
    dp = [[list() for _ in range(K+1)] for _ in range(D+1)]
    dp[0][0] = [[0]]
    for n in range(0, N):
        dp1 = [[list() for _ in range(K+1)] for _ in range(D+1)]
        for d in range(0, D+1):
            for k in range(0, K+1):
                if d + (n+1) <= D and k + 1 <= K:
                    for l in dp[d][k]:
                        dp1[d+(n+1)][k+1].append(l + [n+1])
                for l in dp[d][k]:
                    dp1[d][k].append(l)
        dp = dp1
    if dp[D][K]:
        L = dp[D][K]
        L.sort()
        print(*L[0][1:])
    else:
        print(-1)
if __name__ == '__main__':
    main()