hdu 2578 Dating with girls(1)(二分查找)
来源:互联网 发布:红包源码 编辑:程序博客网 时间:2024/05/16 14:47
题意:从n个数中找出满足x+y=k的个数
测试数据:
input:
1
6 4
1 2 2 3 4 5
output:
3
代码:
#include<cstdio>#include<algorithm>using namespace std;int a[100005];int b[100005];int cmp(const int x,const int y){ return x<y;}int bi_search(int key,int n){ int low=0,mid,high=n-1; while(low<=high) { mid=(low+high)/2; if(b[mid]==key) return 1; else if(b[mid]<key) low=mid+1; else high=mid-1; } return 0;}int main(){ int n,k; int key; int flag; int ans; int t; scanf("%d",&t); while(t--) { scanf("%d%d",&n,&k); for(int i=0; i<n; i++) { scanf("%d",&a[i]); } sort(a,a+n,cmp); b[0]=a[0]; int j=1; for(int i=1;i<n;i++) { if(a[i]==a[i-1]) continue; b[j++]=a[i]; } ans=0; for(int i=0; i<j; i++) { key=k-b[i]; flag=bi_search(key,j); if(flag) { ans++; } } printf("%d\n",ans); } return 0;}
0 0
- hdu 2578 Dating with girls(1)(二分查找)
- hdu 2578 Dating with girls(1)(二分查找)
- hdu 2578 Dating with girls(1) 排序+二分查找 水题
- hdu 2578 Dating with girls(1) (二分)
- Dating with girls(1)(二分)
- HDU2578 Dating with girls(1)(二分)
- hdoj 2578 Dating with girls(1)(二分+队列)
- hdu (2578) Dating with girls(1)
- HDU 2578 Dating with girls(1)
- HDU 2578Dating with girls(1)
- HDU 2578 Dating with girls(1).
- HDU 2578 Dating with girls(1)
- HDU 2578 - Dating with girls(1)
- HDU 2578 Dating with girls(1)
- HDU 2578 Dating with girls(1
- HDU 2578 Dating with girls(1)
- hdu 2578 Dating with girls(1)
- HDU 2578 Dating with girls(1)
- Android ViewPager使用详解
- 数字去重排序问题
- Android入门:Activity生命周期
- xib的简单使用
- MySQL创建用户及数据库并赋予其权限
- hdu 2578 Dating with girls(1)(二分查找)
- 初探Activemq
- (6)设计模式:工厂模式
- python中的高等函数初探
- 写在今天的开车教训
- 关于前端的一点思考
- 使用storyboard创建导航控制器以及控制器的生命周期
- LeetCode OJ Minimum Window Substring
- iOS容易造成循环引用的三种场景,就在你我身边!