文章标题
来源:互联网 发布:云南大学 知乎 编辑:程序博客网 时间:2024/06/07 00:03
二分查找
看完题目以后感觉无从下手 看了别人的解题思路后 感觉顿时明白了 许多
首先将ab 数组的和整合成一个数组 sab 然后在利用公式sab[i] + c[j] = x;
即sab[i] = x - c[j];然后就进行二分查找
#include<algorithm>#include<iostream>#include<string.h>using namespace std;int main(){ int l,n,m; while(cin>>l>>n>>m){ int a[l]; int b[n]; int c[m]; int sab[500 *500]; for(int i =0;i<l;i++){ cin>>a[i]; } for(int j =0;j<n;j++){ cin>>b[j]; } for(int k = 0;k<m;k++){ cin>>c[k]; } int k = 0; for(int i =0;i<l;i++){ for(int j = 0;j<n;j++){ sab[k++] = a[i] + b[j]; } } sort(sab,sab +k); int s; cin>>s; for(int i = 0;i<s;i++){ int x; cin>>x; int j; for( j =0;j<m;j++){ int left = 0; int right = k-1; int mid = (left + right)/2; while(left<=right){ if(sab[mid]>(x - c[j])) right = mid -1; else if(sab[mid]<(x-c[j])) left = mid +1; else break; mid = right /2 + left /2; } if(sab[mid]==x-c[j]){ cout<<"YES"<<endl; break; } } if(j==m) cout<<"NO"<<endl; } } return 0;}
阅读全文
0 0
- 文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题 文章标题 文章标题 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 循环队列
- Java8 默认方法 default method
- 残缺的棋盘(dijkstra算法)
- 理解面向对象
- 多目标及多分类区别及交叉熵问题
- 文章标题
- android开机
- rk3288 gpio控制
- 编译运行eclispe下的项目,weblogic启动报错:系统找不到指定文件
- hdu 3460-Ancient Printer(字典树&&贪心)
- 新手学xingo golang服务器之-修改xingo 支持字符协议(二)
- php最快开发框架EyePHP
- TL431的基本应用电路和几种不常见接法
- CSS轮播图中小圆点的定位问题