fork download
  1. #include <iostream>
  2. #include <vector>
  3. #include <unordered_map>
  4. using namespace std;
  5.  
  6. bool containsNearbyDuplicate(vector<int>& nums, int k) {
  7. unordered_map<int, int> lastIndex;
  8.  
  9. for (int i = 0; i < nums.size(); i++) {
  10. if (lastIndex.count(nums[i]) && i - lastIndex[nums[i]] <= k)
  11. return true;
  12.  
  13. lastIndex[nums[i]] = i;
  14. }
  15.  
  16. return false;
  17. }
  18.  
  19. int main() {
  20. vector<int> nums = {1, 2, 3, 1, 4, 5};
  21. int k = 3;
  22.  
  23. cout << (containsNearbyDuplicate(nums, k) ? "Yes" : "No");
  24. return 0;
  25. }
Success #stdin #stdout 0.01s 5280KB
stdin
Standard input is empty
stdout
Yes