首页 > 试题广场 >

牛妹的项链

[编程题]牛妹的项链
  • 热度指数:630 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
牛妹收到了一个项链,这个项链一共有n个珠子,每个珠子都有一个颜色a_i。这n个珠子构成了一个环。

不知为何,牛妹想从项链上截下一段连续的珠子,但是牛妹不喜欢同一个颜色出现两次,所以截下来的这一段珠子中没有相同的颜色。现在牛妹想知道她可以截下的最长的一段珠子为多长?

个珠子与第个珠子和第个珠子相邻。(i>1且i<n)
特别的,与第1个珠子相邻的珠子为第2个,第n个珠子。
与第n个珠子相邻的珠子为第n-1个,第1个珠子。
示例1

输入

4,[3,1,1,2]

输出

3

说明

牛妹可以选择在第3个珠子的左边和右边各切一刀,截取第4个,第1个和第2个珠子连起来的连续珠子。

备注:

第一个参数n代表珠子个数
第二个参数vector<int> a包含n个元素代表每个珠子的颜色。

这道题你会答吗?花几分钟告诉大家答案吧!