在一个长度为n(n < 1000)的整数序列中,判断是否存在某两个元素之和为k。

朱雀 2022-08-07 12:47 175阅读 0赞

在一个长度为n(n < 1000)的整数序列中,判断是否存在某两个元素之和为k。

输入

第一行输入序列的长度n和k,用空格分开。
第二行输入序列中的n个整数,用空格分开。

输出

如果存在某两个元素的和为k,则输出yes,否则输出no。

样例输入

  1. 9 10
  2. 1 2 3 4 5 6 7 8 9

样例输出

  1. yes
  2. #include<stdio.h>
  3. int main()
  4. {
  5. int n,k;
  6. int i,j;
  7. int a[100];
  8. scanf("%d%d",&n,&k);
  9. for(i=0;i<n;i++)
  10. {
  11. scanf("%d",&a[i]);
  12. }
  13. //选择
  14. for(i=0;i<n-1;i++)//注意是i<n-1而不是i<n
  15. {
  16. for(j=i+1;j<n;j++)
  17. {
  18. if(a[i]+a[j]==k)
  19. {
  20. printf("ok\n");
  21. break;
  22. }
  23. }
  24. }
  25. return 0;
  26. }

发表评论

表情:
评论列表 (有 0 条评论,175人围观)

还没有评论,来说两句吧...

相关阅读