CSU-ACM2016暑假集训训练1-二分搜索 A - Can you find it?
Description
Input
Output
Sample Input
Sample Output
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int A[],B[],C[],temp[];
int L,N,M,S,i;int d=;
while(cin>>L>>N>>M)
{ if(L<||L>||N<||N>||M<||M>) return -;
//输入
for(i=;i<L;i++) cin>>A[i];
for(i=;i<N;i++) cin>>B[i];
for(i=;i<M;i++) cin>>C[i];
cin>>S;
if(S<||S>) return -; //求后两组的和保存到temp中
int tp=;
for(i=;i<N;i++)
for(int t=;t<M;t++)
{
temp[tp]=B[i]+C[t];
tp++;
}
sort(temp,temp+M*N);
//数组去重
int tp1=;
for(i=;i<M*N;i++)
{
if(temp[i]==temp[i-]) continue;
else {tp1++;temp[tp1]=temp[i];}
} cout<<"Case "<<d<<":"<<endl;
while(S--){
int flag=;
int X;
cin>>X;
for(i=;i<L;i++){
int lo=,hi=tp1;
int mi;
while(lo<=hi)
{
mi=((hi-lo)>>)+lo;//lo和hi比较大的时候相加可能爆int
if((A[i]+temp[mi])==X) {flag=; break;}
else if(A[i]+temp[mi]<X) lo=mi+;
else hi=mi-;
}
}
if(!flag) cout<<"YES"<<endl;
else cout<<"NO"<<endl; }
d++;
}
return ;
}
CSU-ACM2016暑假集训训练1-二分搜索 A - Can you find it?的更多相关文章
- 2016huasacm暑假集训训练五 H - Coins
题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/H 题意:A有一大堆的硬币,他觉得太重了,想花掉硬币去坐的士:的士司机可以不找零,但 ...
- 2016huasacm暑假集训训练五 J - Max Sum
题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/J 题意:求一段子的连续最大和,只要每个数都大于0 那么就会一直增加,所以只要和0 ...
- 2016huasacm暑假集训训练五 G - 湫湫系列故事——减肥记I
题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/G 这是一个01背包的模板题 AC代码: #include<stdio.h&g ...
- 2016huasacm暑假集训训练五 F - Monkey Banana Problem
题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/F 题意:求至上而下一条路径的所经过的值得和最大值,这题比赛时就出了 但当时看不懂题 ...
- 2016huasacm暑假集训训练五 E - What Is Your Grade?
题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/E 题意:给做出的题目个数,5个的100分,4个的前n/2的同学95,后n/2的90 ...
- 2016huasacm暑假集训训练五 C-Common Subsequence
题目链接:http://acm.hust.edu.cn/vjudge/contest/126708#problem/C 题意:这是一道求字符串的公共子串的最大长度的题目,用dp动态方程即可 if(a[ ...
- 2016huasacm暑假集训训练四 DP_B
题目链接:http://acm.hust.edu.cn/vjudge/contest/125308#problem/M 题意:有N件物品和一个容量为V的背包.第i件物品的费用是体积c[i],价值是w[ ...
- 2016huasacm暑假集训训练四 数论_B
题目链接:http://acm.hust.edu.cn/vjudge/contest/125308#problem/G 题意:求有多少x(1<=x<=n),使得gcd(x,n)>=m ...
- 2016huasacm暑假集训训练四 数论_A
题目链接:http://acm.hust.edu.cn/vjudge/contest/125308#problem/F 题意:狼捉兔子,兔子躲在n个洞中一个,这n个洞围成一个圈,狼会从第0号洞开始,搜 ...
- 2016huasacm暑假集训训练四 _排列
题目链接:http://acm.hust.edu.cn/vjudge/contest/125308#problem/D 这题要求错误的方式有多少种,就是一个错排公式,记得公式就行 ...
随机推荐
- Codeforces Round #332 (Div. 2) B. Spongebob and Joke 水题
B. Spongebob and Joke Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/599 ...
- Java I/O输入输出流详解
一.文件的编码 开发时一定要注意项目默认的编码!!!!!!!! 文件操作的时候一定要记得关闭!!!!!!!! ASCII:美国标准 ...
- 配置Log4j(非常具体)
来自: http://www.blogjava.net/zJun/archive/2006/06/28/55511.html Log4J的配置文件(Configuration File)就是用来设置记 ...
- Android(java)学习笔记76:多线程-定时器概述和使用
定时器: 定时器是一个应用十分广泛的线程工具,可用于调度多个定时任务以后台线程的方式执行. 在Java中,可以通过Timer和TimerTask类来实现定义调度的功能 Timer public Tim ...
- mysql导入数据load data infile用法
mysql导入数据load data infile用法 基本语法: load data [low_priority] [local] infile 'file_name txt' [replace | ...
- JDBC的批量查询报告内存溢出解决方法
由于表中的数据过多(我的超过了50W+),查询select * from table ....报告内存溢出 Exception in thread "main" java.lang ...
- MSP430常见问题之通信类
Q1: 430 串口中,有个R/D 控制线,在接收上位机的数据,但本身的数据有无发送完毕不知道啊,什么时候才可置低R/d 位来接收数据啊?好像430 没有发送完中断标志A1:字节主动发送,一般都能发出 ...
- Java线程池--ThreadPoolExecutor
一.线程池的处理流程 向线程池提交一个任务后,它的主要处理流程如下图所示: 一个线程从被提交(submit)到执行共经历以下流程: 线程池判断核心线程池里的线程是否都在执行任务,如果不是,则创建一个新 ...
- poj 2942 点的双连通分量
思路: 对于该图,直接用建图貌似没法解,所以也很容易想到建补图,这样存在边的两个点就能再圆桌上做一起.也就将问题转化为对双连通分量中是否存在奇圈了. 我们将每次查询的边保存在stack中,当遇到关键点 ...
- 动一动手指,玩转 Kindle Paperwhite 2 (2015.7.13)
Crtl+F 可搜索关键词.不(da)定(si)期(bu)更新,注明本帖链接即可转载.我可懒得写太详细,所以直接引了贴吧/论坛链接,这里衷心感谢原作. 首发贴吧,结果没几个人回复加上某度抽风难止就转移 ...