#CF1969F. 卡牌配对
卡牌配对
卡牌配对
- 时间限制:5 秒
- 内存限制:512 MiB
题目描述
有一副包含 张牌的牌组,每张牌都属于 种类型之一。给定序列 ,它按从牌组顶部到底部的顺序表示每张牌的类型。 与 均为偶数。
游戏开始时,你从牌组顶部抽取 张牌。之后每一回合依次进行:
- 从手牌中选择恰好两张并打出;若两张牌类型相同,获得一枚硬币;
- 若牌组非空,从牌组顶部恰好抽取两张牌;
- 若手牌与牌组均为空,游戏结束,否则开始下一回合。
请计算最多能够获得多少枚硬币。
输入格式
第一行包含两个整数 。
第二行包含 个整数 。
输出格式
输出一个整数,表示最多能够获得的硬币数。
样例输入 1
4 2
1 2 1 2
样例输出 1
0
样例输入 2
8 2
2 1 2 2 1 2 1 2
样例输出 2
1
样例输入 3
4 4
1 2 1 2
样例输出 3
2
样例输入 4
6 4
3 2 3 1 2 1
样例输出 4
3
样例输入 5
6 4
3 2 3 3 2 1
样例输出 5
2
样例输入 6
18 6
5 6 1 1 6 5 4 1 5 1 1 6 2 6 2 2 6 3
样例输出 6
6
样例输入 7
8 4
1 2 3 4 4 3 1 2
样例输出 7
2
样例输入 8
8 4
1 2 3 4 4 3 3 2
样例输出 8
3
数据范围
, 均为偶数,。
| 子任务编号 | 分值 | 特殊限制 |
|---|---|---|
| 1 | 20 | 且 |
| 2 | 40 | |
| 3 | 无特殊限制 |
每个测试点独立计分。