#P10077. [GDKOI2024 普及组] 读书

[GDKOI2024 普及组] 读书

题目描述

Zayin 是一个热爱读书的学生。

最近,Zayin 收到了一本有 nn 个章节的书,其中每个章节 ii 都有一个限制:她必须至少阅读了其他 aia_i 个 章节,才能够获取足够的智慧来读懂该章节。

每天,Zayin 都会从头到尾开始阅读这本书。对于她还不能读懂的章节(由于限制)或是已经阅读过的章节,Zayin 会在那天跳过它们。

现在,Zayin 想要知道至少需要多少天才能阅读完所有的 nn 个章节。

输入格式

第一行包含两个整数 d,nd, n,表示测试点编号和章节数。

第二行包含 nn 个整数 ai(0ai<n)a_i (0 \leq a_i < n),表示限制。

输出格式

输出一行包含一个整数,表示最少需要的天数。

如果 Zayin 无法阅读完所有的 nn 个章节,输出 1-1

1 10
3 4 0 6 1 1 0 8 6 3
2

提示

本题使用子任务捆绑测试。

对于所有测试数据,保证 1n5×105,0ai<n1 \leq n \leq 5 \times 10^5 , 0 \leq a_i < n

  • Subtask 1(10%):1n101 ≤ n ≤ 10d=1d = 1
  • Subtask 2(10%):1n5001 ≤ n ≤ 500d=2d = 2
  • Subtask 3(20%):1n50001 ≤ n ≤ 50003d43 \leq d \leq 4
  • Subtask 4(20%):1n1051 ≤ n ≤ 10^55d65 \leq d \leq 6
  • Subtask 5(40%):1n5×1051 ≤ n ≤ 5 \times 10^57d107 \leq d \leq 10