問題一覧 > 通常問題

No.1861 Required Number

レベル : / 実行時間制限 : 1ケース 2.500秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 91
作問者 : sushitorunasushitoruna / テスター : shiomusubi496shiomusubi496 MtSakaMtSaka
9 ProblemId : 7428 / 出題時の順位表 / 自分の提出
問題文最終更新日: 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もしくは右上の雲マークをクリックしてアカウントを作成してください。