杨嘉琪


私信TA

用户名:dotcpp0664564

访问量:1059

签 名:

等  级
排  名 633
经  验 3981
参赛次数 1
文章发表 21
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

TA的其他文章

1755: 姓名排序
浏览:9

解题思路:

注意事项:

参考代码:

#include<iostream>

#include<algorithm>

using namespace std;

int a[100001];

int main()

{

int n,m;

int i;

//输入 

cin>>n;

for(i=0;i<n;i++){

cin>>a[i];

}

cin>>m;

//排序 

sort(a,a+n);

//二分 

int mid,high,low;

high=n-1;

low=0;

while(low<=high){

//如果等于m,输出并停止程序 

if(a[low]+a[high]==m){

cout<<a[low]<<" "<<a[high];

return 0;

}

//如果相加小于m,那么最低下标++ 

else if(a[low]+a[high]<m){

low++;

}

//如果相加大于m,那么最高下标--

else{

high--;

}

}

cout<<"No";

return 0;

 } 



 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区