Kali_prasad

pair with difference k

Mar 26th, 2022 (edited)
34
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.48 KB | None | 0 0
  1. #pragma GCC optimize ("O3")
  2. #pragma GCC target ("sse4")
  3.  
  4. #include <bits/stdc++.h>
  5. using namespace std;
  6.  
  7. typedef long long ll;
  8. typedef pair<int, int> pii;
  9. typedef pair<string,int> psi;
  10. typedef vector<int> vi;
  11. typedef vector<string> vs;
  12. typedef vector<ll> vll;
  13. typedef vector<vector<int>> vvi;
  14. typedef vector<vector<string>> vvs;
  15. typedef vector<vector<ll>> vvll;
  16.  
  17. #define FOR(i, a, b) for (auto i=a; i<=(b); i++)
  18. #define FORd(i,b,a) for (int i =b; i >= a; i--)
  19. #define sz(x) (int)(x).size()
  20. #define mp make_pair
  21. #define pb push_back
  22. #define f first
  23. #define s second
  24. #define ins insert
  25.  
  26. const int MOD = 1000000007;
  27. //type functions here
  28.  
  29.  
  30.  
  31. int main() {
  32.    
  33.     int tc;
  34.     cin>>tc;
  35.     FOR(i,1,tc)
  36.     {
  37.         int size,k;
  38.        
  39.         cin>>size>>k;
  40.         vi v;
  41.         FOR(j,1,size)
  42.         {
  43.             //cout<<"z";
  44.             int temp;
  45.             cin>>temp;
  46.             v.pb(temp);
  47.         }
  48.         int left=size-2,right=size-1;
  49.         string s="false";
  50.         sort(v.begin(),v.end());
  51.         k=abs(k);
  52.         while(right>left&&left>=0)
  53.         {
  54.            
  55.             //cout<<"k";
  56.             int diff=v[right]-v[left];
  57.             diff=abs(diff);
  58.             //cout<<diff<<" ";
  59.             if(diff<k)
  60.             left--;
  61.             else if(diff>k)
  62.             right--;
  63.             else
  64.             {
  65.                 s="true";
  66.                 break;
  67.             }
  68.            
  69.         }
  70.         cout<<s<<endl;
  71.     }
  72.     return 0;
  73. }
  74.  
  75.  
  76.  
  77.  
Add Comment
Please, Sign In to add comment