/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
Scanner sc
= new Scanner
(System.
in); int size = sc.nextInt();
int[] arr =new int[size];
int target = sc.nextInt();
for(int i = 0;i<size;i++){
arr[i] = sc.nextInt();
}
int result = countPairs(arr,target);
}
public static int countPairs(int arr[], int target) {
// code here
Map
<Integer,Integer
> map
= new HashMap
<>();
int count = 0;
for(int num : arr){
int complement = target - num;
if(map.containsKey(complement)){
count+=map.get(complement);
}
map.put(num,map.getOrDefault(num,0)+1);
}
return count;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCVNjYW5uZXIgc2MgPSBuZXcgU2Nhbm5lcihTeXN0ZW0uaW4pOwoJCWludCBzaXplID0gc2MubmV4dEludCgpOwogCQkKCQlpbnRbXSBhcnIgPW5ldyBpbnRbc2l6ZV07CgoJCWludCB0YXJnZXQgPSBzYy5uZXh0SW50KCk7CiAKCQlmb3IoaW50IGkgPSAwO2k8c2l6ZTtpKyspewoJCQlhcnJbaV0gPSBzYy5uZXh0SW50KCk7CgkJfQoKCQogCiAgICAgICAgICAgIGludCByZXN1bHQgPSBjb3VudFBhaXJzKGFycix0YXJnZXQpOwogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4ocmVzdWx0KTsKICAgICAgICAKCX0KCiAgICBwdWJsaWMgIHN0YXRpYyBpbnQgY291bnRQYWlycyhpbnQgYXJyW10sIGludCB0YXJnZXQpIHsKICAgICAgICAvLyBjb2RlIGhlcmUKICAgICAgICBNYXA8SW50ZWdlcixJbnRlZ2VyPiBtYXAgPSBuZXcgSGFzaE1hcDw+KCk7CiAgICAgICAgCiAgICAgICAgaW50IGNvdW50ID0gMDsKICAgICAgICBmb3IoaW50IG51bSA6IGFycil7CiAgICAgICAgICAgIAogICAgICAgICAgICBpbnQgY29tcGxlbWVudCA9IHRhcmdldCAtIG51bTsKICAgICAgICAgICAgCiAgICAgICAgICAgIGlmKG1hcC5jb250YWluc0tleShjb21wbGVtZW50KSl7CiAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgIGNvdW50Kz1tYXAuZ2V0KGNvbXBsZW1lbnQpOwogICAgICAgICAgICAgICAgCiAgICAgICAgICAgIH0KICAgICAgICAgICAgbWFwLnB1dChudW0sbWFwLmdldE9yRGVmYXVsdChudW0sMCkrMSk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIHJldHVybiBjb3VudDsKICAgICAgICAKICAgIH0KCn0=