HDOJ2141(map在二分搜索中的应用)
#include<iostream>
#include<cstdio>
#include<map>
#include<algorithm>
using namespace std ;
#define M 500 + 10
int a[M] ;
int b[M] ;
int c[M] ;
int d[M] ;
int l ;
int n ;
int m ;
map <int , bool > Map ;
void Marge()
{
for(int i = ;i < l ; ++ i)
for(int j = ;j < n ; ++ j)
Map[a[i] + b[j]] = ;
}
bool Check(int x)
{
int tem ;
for(int i = ;i <l ; ++ i)
{
tem = x - c[i] ;
if(Map.count(tem)) return true ;
}
return false ;
}
int main()
{
int s ;
int x ;
int T = ;
while(scanf("%d%d%d",&l ,&n , &m) != EOF )
{
for(int i = ;i < l ; ++ i)
scanf("%d",a + i) ;
for(int i = ;i < n ; ++ i)
scanf("%d",b + i) ;
for(int i = ;i < m ; ++ i)
scanf("%d",c + i) ;
scanf("%d",&s) ;
printf("Case %d:\n",T ++) ;
Marge() ;
while(s --)
{
scanf("%d",&x) ;
if(Check(x)) puts("YES") ;
else puts("NO") ;
}
Map.clear() ;
}
return ;
}
标准二分搜索代码:
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std ;
const int MAX_N=;
int a[MAX_N];
int b[MAX_N];
int c[MAX_N];
int d[MAX_N*MAX_N];
int l, n, m, s;
int main()
{
int t=;
while(scanf("%d %d %d",&l, &n, &m)!=EOF)
{
for(int i=; i<l; i++)
{
scanf("%d",&a[i]);
}
for(int i=; i<n; i++)
{
scanf("%d",&b[i]);
}
for(int i=; i<m; i++)
{
scanf("%d",&c[i]);
}
for(int i=; i<l; i++)
{
for(int j=; j<n; j++)
{
d[i*n+j]=a[i]+b[j];
}
}
sort(d,d+l*n);
scanf("%d",&s);
printf("Case %d:\n",++t);
while(s--)
{
int x;
scanf("%d",&x);
bool flag=false;
for(int i=; i<m; i++)
{
if(binary_search(d,d+l*n,x-c[i]))
{
flag=true;
break;
}
}
if(flag)
{
puts("YES");
}
else
{
puts("NO");
}
}
} return ;
}
HDOJ2141(map在二分搜索中的应用)的更多相关文章
- EL表达式获取Map和List中的值
		
EL表达式获取Map和List中的值 EL表达式取Map中的值: 当Map中是String,String时 后台servlet中: Map<String, String> map1 = ...
 - 如何在WindowsPhone Bing Map控件中显示必应中国中文地图、谷歌中国中文地图。
		
原文:如何在WindowsPhone Bing Map控件中显示必应中国中文地图.谷歌中国中文地图. 最近正好有点业余时间,所以在做做各种地图.Bing Map控件本身就能显示必应地图,但是很遗憾微软 ...
 - Map.containsKey方法——判断Map集合对象中是否包含指定的键名
		
该方法判断Map集合对象中是否包含指定的键名.如果Map集合中包含指定的键名,则返回true,否则返回false. public static void main(String[] args) { M ...
 - 07 zabbix之map拓扑标签中macro应用
		
zabbix之map拓扑标签中macro应用 请先预习网地图map : 请点击 macro官方文档介绍 : 请点击 1. Map labels(拓扑图标签)主要注意以下Macros(宏): MAC ...
 - 信1705-2  软工作业最大重复词查询思路: (1)将文章(一个字符串存储)按空格进行拆分(split)后,存储到一个字符串(单词)数组中。 (2)定义一个Map,key是字符串类型,保存单词;value是数字类型,保存该单词出现的次数。 (3)遍历(1)中得到的字符串数组,对于每一个单词,考察Map的key中是否出现过该单词,如果没出现过,map中增加一个元素,key为该单词,value为1(
		
通过学习学会了文本的访问,了解一点哈希表用途.经过网上查找做成了下面查询文章重复词的JAVA程序. 1 思 思路: (1)将文章(一个字符串存储)按空格进行拆分(split)后,存储到一个字符串(单词 ...
 - mybatis中的map.xml文件中sql语句需要分号吗?
		
mybatis中的map.xml文件中sql语句需要分号吗? :你是说sql介绍的分号吗?不需要的
 - STL源码中map和set中key值不能修改的实现
		
前言 最近正好刚刚看完,<stl源码剖析>这本书的map和set的源码部分.但是看完之后又突然发现,之前怎么没有注意到map和set容器中key不能修改是怎么实现的.故,特此整理如下. s ...
 - Map Resource Definition 中type为 'ArcGIS Server Local'.
		
在使用 MapResourceManager, Map进行 地图显示 时, 在 Map Resource Definition 的 type 为 ArcGIS Server Local时概述. 1,打 ...
 - arcgis api for  flex 除去 esri map控件中的logo标志
		
在程序的applicationComplete方法中添加下列代码 private function reallyHideESRILogo(map : Map) : void { for(var i : ...
 
随机推荐
- Bootstrap导航栏头部错位问题
			
代码: <section class="header"> <div class="container"> <div class=& ...
 - Maven项目启动报错
			
错误信息如下: 六月 , :: 下午 org.apache.tomcat.util.digester.SetPropertiesRule begin 警告: [SetPropertiesRule]{S ...
 - PhpStorm编辑器
			
PhpStorm编辑文字过程中发现其有二种方式, 可以通过按“Insert”键进行转换. 第一种是直接在光标后面修改 第二种是直接在光标处修改 很多编辑器也有类似的输入转换,包括Mac的命令台
 - Apache Shiro 使用手册(五)Shiro 配置说明(转发:http://kdboy.iteye.com/blog/1169637)
			
Apache Shiro的配置主要分为四部分: 对象和属性的定义与配置 URL的过滤器配置 静态用户配置 静态角色配置 其中,由于用户.角色一般由后台进行操作的动态数据,因此Shiro配置一般仅包含前 ...
 - 【Prometheus】第二篇---基本查询语法
			
这几天忙着开发别的项目,今天抽空写一下Prometheus的查询语法 1,查看指标 直接输入指标名字就行了,grafana会自动补全 2,查看某个指标的使用率,比如cpu使用率 用到rate函数,ra ...
 - Python socket server demo
			
#coding:utf-8 from socket import * #开启ip和端口 ip_port = ("192.168.1.103",8088) print ip_port ...
 - sql语句查看库里有没有这张表,有就删除
			
查看库里有没有这张表,有就删除 DROP TABLE IF EXISTS 表名
 - Oracle数据库体系结构(4)oracle控制文件
			
控制文件的概述 1.控制文件是oracle数据库非常重要的物理文件,描述了整个数据库的物理结构信息,包括数据库名称.数据文件与重做日志文件的名称与位置,日志序列号等信息.数据库实例根据初始化参数CON ...
 - 【leetcode刷题笔记】Max Points on a Line
			
Given n points on a 2D plane, find the maximum number of points that lie on the same straight line. ...
 - 如何拯救一台glibc被干掉的Linux服务器
			
原文: 如何拯救一台glibc被干掉的Linux服务器? 首先如果 libc.so.6 没有被删除, 直接使用LD_PRELOAD就可以恢复 LD_PRELOAD=/lib64/libc-2.12.s ...