No.1861 Required Number
レベル : / 実行時間制限 : 1ケース 2.500秒 / メモリ制限
: 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 91
作問者 : sushitoruna / テスター : shiomusubi496 MtSaka
タグ : / 解いたユーザー数 91
作問者 : sushitoruna / テスター : shiomusubi496 MtSaka
問題文最終更新日: 2022-03-04 13:19:21
この問題では Python の代わりに PyPy を使用することを推奨します。
Python では、想定解で TLE が出ることが確認されています。
問題文
長さ $N$ の整数列 $A = (A_1, A_2,..., A_N)$ が与えられます。
ここで、以下の条件を全て満たす正整数列 $B = (B_1, B_2, \ldots, B_M)$ を考えます。
- $1 \leq B_1 < B_2 < \cdots < B_M \leq N$
- $\displaystyle \sum_{i=1}^M A_{B_i} = K$
このような $B$ が存在するか判定し、存在しないなら、 -1
を、
存在するなら、どのように $B$ を選んでも必ず $B$ に含まれる正整数の個数を出力してください。
入力
$N$ $K$ $A_1$ $A_2$ $\cdots$ $A_N$
入力は次の制約を満たす。
- $1 \leq N \leq 10000 = 10^4$
- $0 \leq K \leq 1000 = 10^3$
- $0 \leq A_i \leq K$ $(1 \leq i \leq N)$
- 入力は全て整数
ただし、より強い制約でもこの問題は解けるため、以下のケースが入っている。
- $1 \leq N \leq 100000 = 10^5$
- $0 \leq K \leq 100000 = 10^5$
- $0 \leq A_i \leq K$ $(1 \leq i \leq N)$
- 入力は全て整数
このケースは evil ケースとして追加されているため、ジャッジはされるが、最終的な判定には影響しない。このケースで正答を得られても得点が上がることはないので注意せよ。
出力
問題文の条件を満たす $B$ が存在しないなら -1
を、存在するならどのように $B$ を選んでも必ず $B$ に含まれる正整数の個数を出力せよ。
サンプル
サンプル1
入力
5 12
1 3 5 2 4
出力
2
条件を満たす $B$ は、
$(1, 3, 4, 5), (2, 3, 5) $
の $2$ つであり、この $2$ つともに含まれるのは $3, 5$ であるので $2$ を出力します。
サンプル2
入力
2 1000
8 8
出力
-1
条件を満たす $B$ は存在しません。
サンプル3
入力
3 7
3 3 4
出力
1
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。