#P4693. Presents

    ID: 2260 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>语言入门数组基础算法贪心CodeForces

Presents

题目描述

刺猬喜欢给朋友送礼物,但他不喜欢收到礼物。(有钱的刺猬)

所以,刺猬要求你给他写一个程序,计算他在接下来的几天里收到的礼物数。他收到的礼物遵循以下原则:

在每个节假日,刺猬一定会收到礼物。他每 kk 天会收到至少一件礼物(即,如果他在第 ii 天收到了一件礼物,那么他会在 i+ki+k 天或之前再次收到一见礼物,但在一天里,无论他收到多少礼物,仅被视为收到一件礼物)。

给定的 nnkk,以及在接下来的 nn 天中的假期列表,请计算刺猬的能获得礼物最少数量。今天的日期视作零,你应该把今天的礼物看作是已经存在的(也就是说,你不应该把它算在答案里)。

输入格式

第一行包含整数 nnkk1n360, 1kn1\le n\le 360,\ 1\le k\le n)。

第二行包含一个数字 CC,它代表假日的数量(0Cn0\le C\le n)。然后在同一行中还有 CC 个数,表示刺猬的假期编号 aia_i(即刺猬在第 aia_i 天放假)。数字以递增的顺序给出,没有重复编号。

输出格式

一个数字,表示接下来的 nn 天里刺猬收到的礼物的最小数量。

5 2
1 3
3
10 1
3 6 7 8
10