#discovery2016finalb. [discovery_2016_final_b]DDPC特別ビュッフェⅡ
[discovery_2016_final_b]DDPC特別ビュッフェⅡ
問題文
DISCO presents ディスカバリーチャンネルプログラミングコンテスト 2016本戦のDDPC特別ビュッフェの時間が始まりました。あなたはこれから料理の載っていないトレーに料理を載せに行くところです。 DDPC特別ビュッフェには 種類の料理があります。 種類目の料理はビュッフェの開始から 秒後になくなり、料理の美味しさは です。
DDPC特別ビュッフェにはいくつかの特別なルールがあります。
- あなたは 種類の料理をトレーに載せるのに 秒かけなくてはならない。すなわち料理を載せ始めた時刻が であったとき、料理を載せ終わったときの時刻は となる。
- あなたは以前にトレーに載せた料理と同じ種類の料理を載せてはならない。
- 現在の時刻 が を満たさないとき、種類 の料理をトレーに載せることはできない。
あなたはトレーに載っている料理の美味しさの総和が 以上になったところで席に戻ることにしました。トレーに載っている料理の美味しさの総和を 以上にすることが可能な最小の時刻 を求めてください。
入力
入力は以下の形式で標準入力から与えられる。
… …
- 行目にDDPC特別ビュッフェに存在する料理の種類数を表す整数 とトレーに載っている料理の美味しさの総和の目標値 が空白区切りで与えられる。
- 行目にDDPC特別ビュッフェに存在する料理の 種類目の料理がなくなる時刻 が空白区切りで与えられる。
- 行目にDDPC特別ビュッフェに存在する料理の 種類目の料理の美味しさを表す整数 が空白区切りで与えられる。
出力
トレーに載っている料理の美味しさの総和を 以上にすることが可能な最小の時刻 を 行に出力せよ。不可能な場合は-1
を出力せよ。末尾に改行を忘れないこと。
部分点
この問題には部分点が設定されている。
- のとき、 を満たすようなデータセットに正解した場合 点が与えられる。
- 追加制約のないデータセットに正解した場合さらに 点が得られ合計 点が得られる。
入力例 1
4 5
1 2 3 4
3 3 1 1
出力例 1
2
- 以下のような料理の取り方をすることで、時刻 にトレーに載っている料理の美味しさの総和が 以上にすることが可能です。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。種類 の料理をトレーに載せます。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。種類 の料理をトレーに載せます。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。
- このケースは部分点の追加制約を満たします。
入力例 2
3 10
1 2 3
3 3 4
出力例 2
3
- 以下のような料理の取り方をすることで、時刻 にトレーに載っている料理の美味しさの総和が 以上にすることが可能です。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。種類 の料理をトレーに載せます。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。種類 の料理をトレーに載せます。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。種類 の料理をトレーに載せます。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。
- このケースは部分点の追加制約を満たしません。
入力例 3
3 5
9 9 4
2 2 6
出力例 3
1
- 以下のような料理の取り方をすることで、時刻 にトレーに載っている料理の美味しさの総和が 以上にすることが可能です。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。種類 の料理をトレーに載せます。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。
- このケースは部分点の追加制約を満たします。
入力例 4
5 101
1 2 3 4 5
20 20 20 20 20
出力例 4
-1
- どのように料理をとっても、トレーに載っている料理の美味しさの総和を 以上にすることはできません。
- このケースは部分点の追加制約を満たします。
入力例 5
2 2
1 1
1 1
出力例 5
-1
- 時刻 でどちらの料理をとっても、もう片方の料理が時刻 でなくなってしまうため、トレーに載っている料理の美味しさを 以上にすることはできません。
- このケースは部分点の追加制約を満たします。
入力例 6
4 6
1 1 2 2
3 4 1 2
出力例 6
2
- 以下のような料理の取り方をすることで、時刻 にトレーに載っている料理の美味しさの総和が 以上にすることが可能です。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。種類 の料理をトレーに載せます。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。種類 の料理をトレーに載せます。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。
- このケースは部分点の追加制約を満たします。
入力例 7
3 4
1 2 2
1 2 2
出力例 7
2
- 以下のような料理の取り方をすることで、時刻 にトレーに載っている料理の美味しさの総和が 以上にすることが可能です。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。種類 の料理をトレーに載せます。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。種類 の料理をトレーに載せます。
- 秒目の時点でトレーに載っている料理の美味しさの総和は です。
- このケースは部分点の追加制約を満たしません。