import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(), m = scanner.nextInt(); int[] shoot = new int[n]; for (int i = 0; i < n; i++) { shoot[i] = scanner.nextInt(); } int[] map = new int[m+1]; int min = -1, cnt = 0; int l = 0, r = 0; for (; r < n; r++) { if (cnt == m) { for (; l <= r && cnt == m; l++) { if (min == -1 || r-l < min) { min = r - l; } int c = shoot[l]; if (c != 0) { map[c]--; if (map[c] == 0) { cnt--; } } } } int c = shoot[r]; if (c != 0) { if (map[c] == 0) { cnt++; } map[c]++; } } if (cnt == m && (min == -1 || r-l < min)) { min = r - l; } System.out.println(min); scanner.close(); } }