A38320. 找和为 K 的两个元素在一个长度为 n(n < 1 000)的整数序列中, 判断是否存在某两个元素之和为 k。输入第一行输入序列的长度 n 和 k, 用空格分开。 第二行输入序列中的 n 个整数, 用空格分开。输出如果存在某两个元素的和为 k, 则输出 yes, 否则输出 no。样例输入9 101 2 3 4 5 6 7 8 9样例输出yes
填空题
中等
知识点
题目描述
找和为 K 的两个元素
在一个长度为 n(n < 1 000)的整数序列中, 判断是否存在某两个元素之和为 k。
输入
第一行输入序列的长度 n 和 k, 用空格分开。 第二行输入序列中的 n 个整数, 用空格分开。
输出
如果存在某两个元素的和为 k, 则输出 yes, 否则输出 no。
样例输入
9 10
1 2 3 4 5 6 7 8 9
样例输出
yes
参考答案
#include<bits/stdc++.h>
using namespace std;
int main() {
int a,b;
cin>>a>>b;
int s[a];
for (int i=0;i<a;i++) {
cin>>s[i];
}
for (int i=0;i<a;i++) {
for (int j=0;j<a;j++) {
if(s[i]+s[j]==b && s[i]!=s[j]) {
cout<<"yes";
return 0;
}
}
}
cout<<"no";
return 0;
}
上一题
下一题