fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main() {
  5. int n;
  6. cin>>n;
  7.  
  8. vector<int> numbers(n);
  9.  
  10. for(auto& number: numbers){
  11. cin>>number;
  12. }
  13.  
  14. int distance = INT_MIN;
  15.  
  16. unordered_map<int,int> firstOccr;
  17.  
  18. for(int i=0; i<n; i++){
  19. if(firstOccr.find(numbers[i]) != firstOccr.end()){
  20. distance = max(distance, i - firstOccr[numbers[i]]);
  21. }
  22.  
  23. else{
  24. firstOccr[numbers[i]] = i;
  25. }
  26. }
  27.  
  28. if(distance == INT_MIN) distance = 0;
  29.  
  30. cout<<distance;
  31.  
  32. return 0;
  33. }
Success #stdin #stdout 0.01s 5296KB
stdin
6
1 2 3 6 5 4
stdout
Standard output is empty