题解 CF1438B 【Valerii Against Everyone】

这是一道简单的结论题。

根据题意,要求是否有两个子序列的和相同。
显然当子序列长度为 \(1\) 时,达到该条件的可能性越大。

所以,只需要看给出的数组中是否有相同元素即可。

因为,数据范围达到了 \(1e9\) 所以使用桶来判断必然会 MLE。因此考虑对输入的数组排序 用sort。然后再判断相邻的元素是否相等,若相等输出 'YES' ,否则输出 'NO' 。

CODE

#include <iostream>
#include <algorithm>
using namespace std;
int vst[2000];
int n,t;
int main()
{
   cin>>t;
   while(t--)
   {
   	cin>>n;
   	bool f=0;
   	for(int i=1;i<=n;i++) cin>>vst[i];
   	sort(vst+1,vst+1+n);
   	for(int i=2;i<=n;i++) 
   	if(vst[i]==vst[i-1])
   	{
   		f=1;
   		cout<<"YES"<<endl;
   		break;
   	}
   	if(!f) cout<<"NO"<<endl;
   }ros
   return 0;
}
posted @ 2020-12-02 12:01  -lala-  阅读(170)  评论(0)    收藏  举报