fork download
  1. #include <algorithm>
  2. #include <iomanip>
  3. #include <iostream>
  4. #include <vector>
  5. #include <set>
  6. #include <numeric>
  7. #include <map>
  8. #include <unordered_map>
  9. using namespace std;
  10. #define all(a) a.begin(), a.end()
  11. #define ll long long
  12. #define fo(i,n) for (long long i = 0; i < n; i++)
  13.  
  14. int main()
  15. {
  16. ll n,m,input;
  17. ios_base::sync_with_stdio(false);
  18. cin.tie(0); cout.tie(0);
  19. cin >> n;
  20. vector<ll> arr(n);
  21. map<ll,ll> index;
  22. map<ll,ll> freq;
  23. ll mini = 5000000;
  24. fo(j,n)
  25. {
  26. cin >> input;
  27. if (freq[input] == 0)
  28. {
  29. freq[input]++;
  30. index[input] = j;
  31. }
  32. else
  33. {
  34. mini = min(j - index[input],mini);
  35. index[input] = j;
  36. }
  37. }
  38. if (mini == 5000000)
  39. {
  40. cout << -1;
  41. }
  42. else
  43. {
  44. cout << mini+1;
  45. }
  46. }
Success #stdin #stdout 0.01s 5284KB
stdin
10
1 1 2 3 5 8 13 21 34 55
stdout
2