結果

問題 No.115 遠足のおやつ
ユーザー kohaku_kohaku
提出日時 2017-01-12 03:03:48
言語 Java8
結果
AC  
実行時間 208 ms
コード長 913 Byte
コンパイル時間 2536 ms
使用メモリ 40936 KB

テストケース

テストケース表示
入力 結果 実行時間
使用メモリ
sample1.txt AC 168 ms
25456 KB
sample2.txt AC 146 ms
24756 KB
sample3.txt AC 155 ms
24600 KB
system_test1.txt AC 156 ms
24528 KB
system_test2.txt AC 144 ms
24756 KB
system_test3.txt AC 147 ms
25192 KB
system_test4.txt AC 145 ms
24760 KB
system_test5.txt AC 157 ms
25460 KB
system_test6.txt AC 143 ms
24792 KB
system_test7.txt AC 154 ms
24596 KB
system_test8.txt AC 177 ms
36040 KB
system_test9.txt AC 189 ms
38784 KB
system_test10.txt AC 168 ms
29056 KB
system_test11.txt AC 151 ms
24756 KB
system_test12.txt AC 155 ms
24596 KB
system_test13.txt AC 155 ms
24756 KB
system_test14.txt AC 153 ms
24760 KB
testcase1.txt AC 175 ms
31084 KB
testcase2.txt AC 157 ms
24756 KB
testcase3.txt AC 169 ms
29728 KB
testcase4.txt AC 171 ms
27680 KB
testcase5.txt AC 160 ms
24756 KB
testcase6.txt AC 181 ms
27380 KB
testcase7.txt AC 165 ms
25172 KB
testcase8.txt AC 167 ms
26980 KB
testcase9.txt AC 172 ms
29016 KB
testcase10.txt AC 160 ms
25612 KB
testcase11.txt AC 190 ms
38448 KB
testcase12.txt AC 154 ms
25328 KB
testcase13.txt AC 191 ms
40920 KB
testcase14.txt AC 166 ms
26980 KB
testcase15.txt AC 167 ms
29028 KB
testcase16.txt AC 179 ms
38428 KB
testcase17.txt AC 208 ms
40936 KB
testcase18.txt AC 193 ms
39736 KB
testcase19.txt AC 146 ms
24528 KB
testcase20.txt AC 146 ms
24756 KB
testcase21.txt AC 147 ms
24760 KB
テストケース一括ダウンロード

ソースコード

diff #
import java.util.*;
 
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int D = sc.nextInt();
        int K = sc.nextInt();
        boolean [][] b = new boolean [K+1][D+1];
        String [][] s = new String [K+1][D+1];
        for(int i=0; i<=K; i++){
            for(int j=0; j<=D; j++){
                s[i][j]="";
            }
        }
        b[0][0]=true;
        for(int i=1; i<=N; i++){
            for(int j=D; j>=0; j--){
                for(int k=0; k<K; k++){
                    if(b[k][j]&&i+j<=D){
                        b[k+1][i+j]=true;
                        s[k+1][i+j]=s[k][j]+" "+i;
                    }
                }
            }
        }
        if(b[K][D]){
            System.out.println(s[K][D].substring(1));
        }else{
            System.out.println(-1);
        }
    }
}
0