#P14096. 【双指针3】最长连续不重复子序列

【双指针3】最长连续不重复子序列

题目描述:

给定一个长度为 nn 的整数序列 a1,a2,,ana_1, a_2, \dots, a_n,请你找出最长的不包含重复元素的连续子数组,并输出它的长度。

例如,序列中的子数组 a[l],a[l+1],,a[r]a[l], a[l+1], \dots, a[r] 满足以下条件:对于任意 i,ji, jiji \neq j),都有 aiaja_i \neq a_j

请编写程序来求解这个问题。

输入

  • 第一行包含一个整数 nn1n1051 \leq n \leq 10^5),表示序列的长度。
  • 第二行包含 nn 个整数 a1,a2,,ana_1, a_2, \dots, a_n109ai109-10^9 \leq a_i \leq 10^9),表示整数序列。

输出

输出一个整数,表示最长不包含重复元素的连续子数组的长度。

样例输入 1:

7
1 2 3 1 2 3 4

样例输出 1:

样例输入 2:

5
1 1 1 1 1

样例输出 2:

提示

  • 在样例输入 1 中,最长不包含重复元素的子数组是 [1,2,3,4][1, 2, 3, 4],其长度为 4。
  • 在样例输入 2 中,所有的元素都相同,因此最长的不包含重复元素的子数组长度为 1。