Advertisement
Guest User

Untitled

a guest
Nov 13th, 2019
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.93 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string>
  3. #include <vector>
  4. #include <iostream>
  5. #include <fstream>
  6. #include <algorithm>
  7. #include <set>
  8. #include <map>
  9. #include <list>
  10. #include <deque>
  11. #include <memory>
  12. #include <utility>
  13. #include <queue>
  14. #include <math.h>
  15. #include <ctime>
  16. #include <random>
  17. #include <functional>
  18.  
  19. using namespace std;
  20.  
  21. int main() {
  22. ios_base::sync_with_stdio(0);
  23. cin.tie(0);
  24. int q;
  25. cin >> q;
  26. for (int i = 0; i < q; i++) {
  27. int n;
  28. cin >> n;
  29. vector<int> v(n);
  30. for (int i = 0; i < n; i++) {
  31. cin >> v[i];
  32. }
  33.  
  34.  
  35. map<int, int> mapa;
  36. int l = 0, r = 1;
  37. mapa[v[0]]++;
  38. int ans = 1e9;
  39. while (r < n) {
  40. mapa[v[r]]++;
  41. if (mapa[v[r]] >= 2) {
  42. while (v[l] != v[r]) {
  43. mapa[v[l]]--;
  44. l++;
  45. }
  46. ans = min(ans, r - l + 1);
  47. l++;
  48. mapa[v[r]]--;
  49. }
  50. r++;
  51. }
  52. if (ans == 1e9)
  53. cout << "-1\n";
  54. else
  55. cout << ans << '\n';
  56. }
  57.  
  58. return 0;
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement