fork download
  1. #include <iostream>
  2. #include <unordered_map>
  3. #include <vector>
  4.  
  5.  
  6. using namespace std;
  7.  
  8. bool hasNearbyDuplicate(const vector<int>& a, int k) {
  9. unordered_map<int,int> last;
  10. for (int i = 0; i < (int)a.size(); ++i) {
  11. auto it = last.find(a[i]);
  12. if (it != last.end() && i - it->second <= k) return true;
  13. last[a[i]] = i;
  14. }
  15. return false;
  16. }
  17.  
  18. int main() {
  19. vector<int> arr = {1,2,3,1,5};
  20. int k = 3;
  21. cout << (hasNearbyDuplicate(arr, k) ? "Yes" : "No") << "\n";
  22. }
  23.  
Success #stdin #stdout 0.01s 5300KB
stdin
Standard input is empty
stdout
Yes