fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main() {
  5. int n; cin >> n;
  6. vector<int> arr(n);
  7. for(int i =0; i < n; i++)
  8. cin >> arr[i];
  9. int k; cin >> k;
  10.  
  11. unordered_map<int,int> mp;
  12. int ans = INT_MAX;
  13. for(int i = 0; i < n; i++){
  14. int req = k-arr[i];
  15. if(mp.find(req) != mp.end()){
  16. int dist = i-mp[req];
  17. ans = min(ans, dist);
  18. }
  19. mp[arr[i]] = i;
  20. }
  21. cout << ans+1;
  22. return 0;
  23. }
Success #stdin #stdout 0.01s 5324KB
stdin
9
5 6 7 8 10 4 3 2 1
8
stdout
7