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 : ...
随机推荐
- iOS与JS开发交互总结
hybrid.jpg 前言 Web 页面中的 JS 与 iOS Native 如何交互是每个 iOS 猿必须掌握的技能.而说到 Native 与 JS 交互,就不得不提一嘴 Hybrid. Hybri ...
- Modeling of Indoor Positioning Systems Based on Location Fingerprinting
Kamol Kaemarungsi and Prashant Krishnamurthy Telecommunications Program School of Information Scienc ...
- 我的Android进阶之旅------>启动Activity的标准Action和标准Category
Android内部提供了大量标准的Action和Category常量. 除了参考本文外,您还可以参考了以下链接: http://developer.android.com/reference/andr ...
- Android开发之深入理解泛型extends和super的区别
摘要: 什么是泛型?什么是擦除边界?什么是上界限定或下界限定(子类型限定或超类型限定)?什么是类型安全?泛型extends关和super关键字结合通配符?使用的区别,两种泛型在实际Android开发中 ...
- Linux c编程:I/O多路复用之epoll
前面介绍了select处理,这一章继续介绍另外一种I/O多路服用的机制:epoll.来比较下两种机制的不同点. select: 调用过程如下: (1)使用copy_from_user从用户空间拷贝fd ...
- windows环境下JDK1.8安装
jdk的安装,在Windows环境下没有什么特殊的选项,只需要“傻瓜式”安装就行(下一步). 如果说有的话,那就是你安装的路径,默认是c盘下的路径,可以根据自己的喜好,安装到自己的意愿目录: 当然,j ...
- 读取ByteBuffer有效的数据
转:https://zhidao.baidu.com/question/427134449349230532.html说道 ByteBuffer的缓冲区,就需要知道缓冲区的的三个状态1)capacit ...
- 每天一个Linux命令(15)tail命令
tail命令用于输入文件中的尾部内容.tail命令默认在屏幕上显示指定文件的末尾10行. 如果给定的文件不止一个,则在显示的每个文件前面加一个文件名标题. (1)用法: 用法: tail ...
- 剑指offer之 二叉搜索树与双向链表
class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) ...
- 算法(Algorithms)第4版 练习 1.5.23
package com.qiusongde; import edu.princeton.cs.algs4.StdOut; public class Exercise1523 { public stat ...