3776 - 球迷
描述

班里有 N 位同学,每位同学要么是巴萨球迷,要么是皇马球迷。陈老师要给他们分宿舍,同一个宿舍必须满足下面三条中的任意一条:

  • 宿舍里全部是巴萨球迷;

  • 宿舍里全部是皇马球迷;

  • 宿舍里两种球迷的人数之差不超过 M。

现在 N 位同学已经排成一队,陈老师只会把连续的一段同学分进同一个宿舍。

请问陈老师最少要安排几个宿舍才够?

输入

第一行两个整数 N 和 M。

接下来 N 行,每行一个整数,1 表示巴萨球迷,2 表示皇马球迷。

输出

输出仅一个整数,表示最少的宿舍数量。

样例

输入

5 1
2
2
1
2
2

输出

2
提示

样例解释

N=5,\ M=1,队伍是 2\ 2\ 1\ 2\ 2,即 皇马、皇马、巴萨、皇马、皇马 (4 个皇马,1 个巴萨)。

  • 若只分 1 个宿舍:两种人数差 |4-1| = 3 > M = 1,又不全是同一类,不合法;

  • 分成 [2,2] 和 [1,2,2]:第一段全是皇马,合法;第二段 2 个皇马、1 个巴萨,人数差 1 \le M,也合法。共用 2 个宿舍,所以答案是 2。

数据范围

  • 对于 30\% 的数据,1 \le N, M \le 50;

  • 对于 100\% 的数据,1 \le N, M \le 2500。

本题共 10 个测试点,每个 10 分。

来源
2024CCF入门组模拟赛13(8.7)
标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 10
通过次数 5