5. 凑和
题目描述
有n个整数,编号1到n,判断能否找到两个不同编号的数总和为m。如果可以找到,则输出Yes。若找不到则输出No。
注意:需要找的是两个不同编号的数。
输入格式
输入的第一行为n和m两个整数,第二行为n个数字。 其中n<=100,数字绝对值不超过100000。
输出格式
Yes或者No
代码
#include<bits/stdc++.h>
using namespace std;
int m,n,num[101],i,j;
bool ans=0;
int main(){
cin>>n>>m;
for(i=0;i<n;i++)cin>>num[i];
for(i=0;i<n;i++){
for(j=i+1;j<n;j++)
if(num[i]+num[j]==m){ans=1;break;}
}
cout<<(ans?"Yes":"No")<<endl;
return 0;
}