#include<bits/stdc++.h>
#include <iostream>
using namespace std;
int countPair(vector<int> arr,int k){
unordered_map<int,int> freq;
int count=0;
for(int i=0;i<arr.size();i++){
if(freq.find(arr[i]+k) != freq.end()){
count = count+freq[arr[i]+k];
}
if(freq.find(arr[i]-k)!=freq.end() && k!=0){
count += freq[arr[i]-k];
}
freq[arr[i]]++;
}
return count;
}
int main(){
vector<int> arr={1, 5, 3, 4, 2};
int k=2;
cout<<"No. of Pairs: "<<countPair(arr,k);
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IGNvdW50UGFpcih2ZWN0b3I8aW50PiBhcnIsaW50IGspewogICAgdW5vcmRlcmVkX21hcDxpbnQsaW50PiBmcmVxOwogICAgaW50IGNvdW50PTA7CiAgICBmb3IoaW50IGk9MDtpPGFyci5zaXplKCk7aSsrKXsKICAgICAgICAKICAgICAgICBpZihmcmVxLmZpbmQoYXJyW2ldK2spICE9IGZyZXEuZW5kKCkpewogICAgICAgICAgICBjb3VudCA9IGNvdW50K2ZyZXFbYXJyW2ldK2tdOwogICAgICAgIH0KICAgICAgICBpZihmcmVxLmZpbmQoYXJyW2ldLWspIT1mcmVxLmVuZCgpICYmIGshPTApewogICAgICAgICAgICBjb3VudCArPSBmcmVxW2FycltpXS1rXTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgZnJlcVthcnJbaV1dKys7CiAgICAgICAgCiAgICB9CiAgICByZXR1cm4gY291bnQ7CiAgICAKfQoKaW50IG1haW4oKXsKICAgIHZlY3RvcjxpbnQ+IGFycj17MSwgNSwgMywgNCwgMn07CiAgICBpbnQgaz0yOwogICAgY291dDw8Ik5vLiBvZiBQYWlyczogIjw8Y291bnRQYWlyKGFycixrKTsKfQ==