CF1110D Jongmah
题目描述
你正在玩一种叫做 Jongmah 的游戏。你不需要了解游戏规则也能解决这个问题。你手中有 $n$ 张牌。每张牌上写有一个 $1$ 到 $m$ 之间的整数。
为了赢得游戏,你需要组成若干组三张牌的“组三”。每组三张牌,要求这三张牌上的数字要么完全相同,要么是连续的。例如,$7, 7, 7$ 是一个有效的组三,$12, 13, 14$ 也是有效的,但 $2, 2, 3$ 或 $2, 4, 6$ 都不是。你只能用手中的牌来组成组三,每张牌最多只能用在一个组三中。
为了判断你距离胜利还有多远,你想知道用手中的牌最多能组成多少个组三。
输入格式
第一行包含两个整数 $n$ 和 $m$($1 \le n, m \le 10^6$),分别表示你手中的牌数和牌的种类数。
第二行包含 $n$ 个整数 $a_1, a_2, \ldots, a_n$($1 \le a_i \le m$),其中 $a_i$ 表示第 $i$ 张牌上的数字。
输出格式
输出一个整数,表示你最多能组成多少个组三。
说明/提示
在第一个样例中,你有牌 $2, 3, 3, 3, 4, 4, 4, 5, 5, 6$。你可以这样组成三个组三:$2, 3, 4$;$3, 4, 5$;$4, 5, 6$。由于只有 $10$ 张牌,无法组成 $4$ 个组三,所以答案是 $3$。
在第二个样例中,你有牌 $1$、$2$、$3$($7$ 张)、$4$、$5$($2$ 张)。你可以这样组成 $3$ 个组三:$1, 2, 3$;$3, 3, 3$;$3, 4, 5$。可以证明无法组成 $4$ 个组三。
由 ChatGPT 4.1 翻译