View Code of Problem 133

#include<bits/stdc++.h>
using namespace std;
int a[1000000] = {0};
int main() {
	int t;
	cin >> t;
	while (t--) {
		int n, x;
		cin >> n >> x;
		vector<int> shu;
		for (int i = 0; i < n; i++) {
			int m;
			cin >> m;
			shu.push_back(m);
			a[m]++;
		}
		int flag=0;
		for(auto i:shu){
			if(i<=x){
				if(a[x-i]>0&&(x-i)!=i){
					flag=1;
					break;
				}
				if(a[x-i]>0&&(x-i)==i){
					if(a[x-i]>=2)
					{
						flag=1;
						break;
					}
				}
				
			}
		}
		if(flag==1)
			cout<<"YES"<<endl;
		else
			cout<<"NO"<<endl;

	}
}

Double click to view unformatted code.


Back to problem 133