#discovery2016finalb. [discovery_2016_final_b]DDPC特別ビュッフェⅡ
[discovery_2016_final_b]DDPC特別ビュッフェⅡ
问题
DISCO presents ディスカバリーチャンネルプログラミングコンテスト 2016本戦のDDPC特別ビュッフェの時間が始まりました。あなたはこれから料理の載っていないトレーに料理を載せに行くところです。 DDPC特別ビュッフェには 種類の料理があります。 種類目の料理はビュッフェの開始から 秒後になくなり、料理の美味しさは です。
DDPC特別ビュッフェにはいくつかの特別なルールがあります。
- あなたは 種類の料理をトレーに載せるのに 秒かけなくてはならない。すなわち料理を載せ始めた時刻が であったとき、料理を載せ終わったときの時刻は となる。
- あなたは以前にトレーに載せた料理と同じ種類の料理を載せてはならない。
- 現在の時刻 が を満たさないとき、種類 の料理をトレーに載せることはできない。
あなたはトレーに載っている料理の美味しさの総和が 以上になったところで席に戻ることにしました。トレーに載っている料理の美味しさの総和を 以上にすることが可能な最小の時刻 を求めてください。
输入
输入以以下格式从标准输入中给出。
… …
- 第一行输入一个整数 ,表示DDPC特别自助餐存在的菜品种类数;一个整数 ,表示托盘上的美味程度总和的目标值。
- 第二行输入一个整数 表示DT特别自助餐的第 种菜在 时刻消失, 以空格分隔。
- 第三行输入一个整数 表示DT特别自助餐的第 种菜的美味度,以空格分隔。
输出
输出最小的时刻 ,使得托盘上的菜品美味程度总和不少于 。如果无法实现,则输出-1
。最后要换行。
部分点
此问题设置了部分点。
- 如果在满足 的情况下,能够得到 的数据集,则获得 分。
- 如果在没有其他约束的数据集中得到正确答案,则额外获得 分,总共获得 分。
输入示例 1
4 5
1 2 3 4
3 3 1 1
输出示例 1
2
- 通过以下方式取餐,可以在 时刻托盘上的美味程度总和达到 以上:
- 时刻 托盘上的美味程度总和为 。将第一种菜放在托盘上。
- 时刻 托盘上的美味程度总和为 。将第二种菜放在托盘上。