fork download
  1. #include <bits/stdc++.h>
  2. #define int long long
  3. using namespace std;
  4.  
  5. void solve() {
  6. int n;
  7. cin>>n;
  8. vector<int> v(n);
  9. for(int i=0;i<n;i++)cin>>v[i];
  10. map<int,int> mp;
  11. for(int i=0;i<n;i++){
  12. mp[v[i]]++;
  13. }
  14. bool f=false;
  15. for(auto s:mp){
  16. if(s.second==1){
  17. f=false;
  18. break;
  19. }
  20. else{
  21. f=true;
  22. }
  23. }
  24. if(f){
  25. cout<<0<<endl;
  26. return;
  27. }
  28.  
  29. int l=0,r=0;
  30. int p=0,q=0;
  31. int maxi=0;
  32. while(r<n){
  33. if(mp[v[r]]>1){
  34. if(maxi<(r-l+1) && l!=r){
  35. maxi=r-l+1;
  36. p=l,q=r-1;
  37. }
  38. r++;
  39. l=r;
  40. }
  41. else{
  42. r++;
  43. }
  44. }
  45. if(maxi<(r-l+1) && l!=r){
  46. maxi=r-l+1;
  47. p=l,q=r-1;
  48. }
  49. cout<<p+1<<" "<<q+1<<endl;
  50.  
  51.  
  52. }
  53.  
  54. signed main() {
  55. int t;
  56. cin >> t;
  57. while (t--) {
  58. solve();
  59. }
  60. return 0;
  61. }
  62.  
Success #stdin #stdout 0.01s 5288KB
stdin
1
2
1 2
stdout
1 2