AlgoMooc
← 返回题库

P5203. 切糖果

中等通过率 42% · 提交 12 · 通过 5
哈希表双指针滑动窗口哈希集合

小慕在糖果店里看到一根很长的棒棒糖,他可以从任意位置让老板切断,老板会把从糖果前端到切断位置的那一段卖给他。这根棒棒糖的不同段有着不同的口味,小慕希望他选到的这一段里每一小段的口味都互不相同,同时他还想尽可能买到更长的糖果。小慕想知道自己最多能买到多长的糖果,请你帮他算一算。

提示:带虚线的词点一下有通俗解释。

输入描述

第一行1个整数n,表示糖果的长度。 第二行n个整数a1 a2 ... an,其中ai表示从糖果前端开始第i段的口味,每段均1为单位长度。 对于100%的数据,1<=n<=50000,1<=ai<=50000

输出描述

输出一行一个整数表示能买到的糖果的最长长度,且其中不包含相同口味.

示例

示例 1

输入

5
1 2 3 3 4

输出

3

时间限制 1000 ms · 内存限制 128 MB

看不懂题目?点开图解(训练营专属)

登录后查看题目图解

题目图解为训练营学员专属内容,请先登录。

微信扫码登录还不是训练营学员?了解训练营 →
写完代码点「提交」,将对全部测试用例判题。

向老师提问

针对「切糖果」把疑问、代码和报错填清楚,老师收到后能更快、更准地回复你。