문제
N개의 숫자로 이뤄진 수열 A가 주어진다. 집합 S를 '수열 A에 등장하는 숫자들을 정확히 한번 씩 포함하는 집합' 이라고 정의하자. A={1, 8, 8, 8, 1} 이라고 할 경우 S={1, 8}이 된다.
A에서 임의의 연속된 구간을 잡았을 때, 이를 A' 이라고 하고 S'를 수열 A'에 등장하는 숫자들을 정확히 한번 씩 포함하는 집합이라 할 때 S=S'이 되는 연속 구간의 최소 크기를 찾는 프로그램을 작성하라.
입력
입력의 첫째 줄에는 N (1≤N≤1,000,000)가 입력된다.
그 다음 줄에는 N개의 숫자가 주어지며, 이는 -2,147,483,648~2,147,483,647사이의 정수다.
출력
구간의 최소 길이를 출력한다.
예제 #1
5
1 8 8 8 1
2
예제 #2
10
1 2 3 4 5 6 7 8 9 10
10
예제 #3
6
1 2 3 1 2 3
3