using System; using static System.Console; using System.Linq; using System.Collections.Generic; class Program { static int NN => int.Parse(ReadLine()); static int[] NList => ReadLine().Split().Select(int.Parse).ToArray(); public static void Main() { Solve(); } static void Solve() { var n = NN; var a = NList; var dic = new Dictionary>(); for (var i = 0; i < n; ++i) { if (dic.ContainsKey(a[i])) dic[a[i]].Add(i); else dic[a[i]] = new List{ i }; } var kmin = 1; var kmax = n - 1; foreach (var kv in dic) { if (kv.Value.Count > 2) { WriteLine("0"); WriteLine(); return; } else if (kv.Value.Count == 2) { kmin = Math.Max(kmin, kv.Value[0] + 1); kmax = Math.Min(kmax, kv.Value[1]); } } var ans = new List(); for (var i = kmin; i <= kmax; ++i) ans.Add(i); WriteLine(ans.Count); WriteLine(string.Join(" ", ans)); } }