博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
51Nod 1001 数组中和等于K的数对
阅读量:6786 次
发布时间:2019-06-26

本文共 983 字,大约阅读时间需要 3 分钟。

http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1001 一开始的想法是排序后二分搜索,发现会进行非常多不必要的遍历,十分耗时间。 解决方法:在得到一对数之后顺便令数组长度进行缩短能够有效减少运行时间。  1 #include
2 #include
3 using namespace std; 4 //int bs(int key,int num,int i,int n[],int sum); 5 6 int main() 7 { 8 int sum,num; 9 cin >> sum >> num;10 int n[num];11 for(int i=0; i
> n[i];14 }15 sort(n,n+num);16 int left = 0;17 int f=0;18 int right = num-1;19 while(left < right)20 {21 if((sum-n[left])==n[right])22 {23 f=1;24 cout << n[left] << ' ' << sum - n[left] << endl;25 right--;26 left++;27 }28 else if((sum-n[left])>n[right])29 {30 left++;31 }32 else if((sum-n[left])
n[mid])66 // left = mid;67 // else if((sum-key)

 

转载于:https://www.cnblogs.com/tornado549/p/8724279.html

你可能感兴趣的文章
LVS实现负载均衡
查看>>
LAMP架构下安装Discuz!论坛
查看>>
shell
查看>>
正则表达式
查看>>
我的友情链接
查看>>
spring MVC的第一次记录
查看>>
js获取 X-X-X N 天后 是 X年X月X日
查看>>
我的友情链接
查看>>
神奇的504 Bad Gateway Timeout
查看>>
mysql安装报错解决一例
查看>>
在服务器上排除问题的头五分钟
查看>>
安装 - FreeBSD + Nginx 环境搭建教程(推荐)
查看>>
学习cocos2d --- 场景创建
查看>>
小凡带你搭建本地的光盘yum源
查看>>
java 求最大公约数和最小公倍数
查看>>
vmware workstation的bridged NAT host-only区别与适用场景简介
查看>>
Linux基础知识
查看>>
Struts2中的OGNL详解
查看>>
隐藏/屏蔽服务器信息与web软件版本信息
查看>>
ifstat 网络流量统计工具
查看>>