#J0037. [csp-j 2023模拟] 过桥

[csp-j 2023模拟] 过桥

题目描述:

在夏天,卡维喜欢参观他的乡村别墅。这里应有尽有:舒适的秋千、自行车和一条河。 河上有一座由木桥组成的木桥

木板。它很旧,没有吸引力,所以卡维决定粉刷它。在棚屋里,他们发现了K种不同颜色的油漆罐。

在把每块木板涂成K种颜色中的一种后,卡维准备去荡秋千,休息一下,然而他意识到房子在河的另一边,但是现在油漆并没有干透所以他还不能在桥上走。

卡维最决定他任然会在桥上行走,但是为了不破坏桥的外观,所以只踩在相同颜色的木板上,以防脚上的油漆破坏另外一种颜色的木板,卡维现在还剩下一点油漆,只够从新粉刷桥上的其中一块木板。

现在卡维站在第一块木板前的地上,为了过桥,他会选择一些相同颜色的木板(重新粉刷后),这些木板的编号为a1,a2...an(1<=an<=k),然后卡维要穿过这些木板。

为了防止跨越木板太大,导致摔倒所以要让选择的两块木板之间的间隔尽可能的小。现在他找到你请你帮忙求出,在过桥时能够将一块(或零块)木板重新涂上不同颜色的情况下通过木桥的最小可能的最大距离。

输入格式:

第一行两个整数n,k表示木板数量和油漆数量(1≤k≤n≤2e5) 第二行n个整数a1,a2,a3...an表示重新涂色后的木板颜色

输出格式:

输出一个数,表示卡维必须跨越的最小可能中的最大距离

样例:

5 2
1 1 2 1 1
0
7 3
1 2 3 3 3 2 1
1

提示