【模板】map入门
map
在数据特别庞大,数组已经满足不了的某些情况下codevs p1230,可以用上map;
我们可以将map容器作为一个有序的映射表,看作为一个下表可以是任意类型的数组;
map是一个红黑树,单次操作的时间o(lgn);
使用
- 定义map
map<类型1,类型2>变量名
map<string,int>ma //定义ma
ma["abc"]=2 //将"abc"映射在2上
cout<<ma["abc"]<<endl; //输出2
- 操作
| operator[] | 访问map中的元素,若该元素不存在,将创建一个新元素,并将该元素映射到类型2的初始值上 |
| ma.begin() | 返回map中第一个元素的迭代器(指针) |
| ma.end() | 返回map中最后一个元素的迭代器(指针) |
| ma.size() | 返回map中元素个数 |
| ma.cout(element) | 若map中存在element,返回1,否则返回0 |
| ma.clear() | 初始化map |
| ma.lower_bound() | 返回大于等于给定元素的第一个位置 |
模板题
题目描述
给出n个正整数,然后有m个询问,每个询问一个整数,询问该整数是否在n个正整数中出现过。
输入输出
input
第一行两个整数 n 和m。
第二行n个正整数(1<=n<= 100000)
第三行m个整数(1<=m<=100000)
output
一共m行,若出现则输出YES,否则输出NO
样例
4 2 2 1 3 4 1 9
输出
YES
NO
数据范围
不超过10^8
代码
#include<cstdio>
#include<map>
using namespace std;
map<int,int> ma;
int n,m;
int main() {
scanf("%d%d",&n,&m);
for(int i=1; i<=n; i++) {
int w; //读入与编号
scanf("%d",&w);
ma[w]=i;
}
for(int i=1; i<=m; i++) {
int w;
scanf("%d",&w);
if(ma.count(w)) printf("%s\n","YES");
else printf("%s\n","NO");//寻找当中是否有这个数
}
}
【模板】map入门的更多相关文章
- 【Ecmall】ECMall2.x模板制作入门系列(认识ECMall模板)
ECMall2.x模板制作入门系列之1(认识ECMall模板) 从ECMall2.0全新架构发布以来,随着版本的不断更新,ECMall已经逐渐走向一个稳定时期,是时候整理一些实用教程了.下面给大家带来 ...
- Source Map入门教程
部署前端之前,开发者通常会对代码进行打包压缩,这样可以减少代码大小,从而有效提高访问速度.然而,压缩代码的报错信息是很难Debug的,因为它的行号和列号已经失真.这时就需要Source Map来还原真 ...
- ECMall2.x模板制作入门系列之2(模板标签/语法)
ECMall2.x模板制作入门系列之2(模板标签/语法) 今天给大家带来一个模板语法的教程.希望能为ECMall模板制作者提供一份参考资料.如有问题.建议和意见,欢迎提出. 在ECMall模板中,用& ...
- SpringBoot集成beetl模板快速入门
SpringBoot集成beetl模板快速入门 首次探索 beetl官方网址:http://ibeetl.com/ 创建SpringBoot工程(idea) 新建工程 选择创建Spring工程 书写包 ...
- Java中的映射Map - 入门篇
前言 大家好啊,我是汤圆,今天给大家带来的是<Java中的映射Map - 入门篇>,希望对大家有帮助,谢谢 简介 前面介绍了集合List,这里开始简单介绍下映射Map,相关类如下图所示 正 ...
- Vue.js——60分钟webpack项目模板快速入门
概述 browserify是一个 CommonJS风格的模块管理和打包工具,上一篇我们简单地介绍了Vue.js官方基于browserify构筑的一套开发模板.webpack提供了和browserify ...
- Velocity模板引擎入门
类似于PHP中的Smarty,Velocity是一个基于Java的模板引擎(template engine).它允许任何人仅仅简单的使用模板语言(template language)来引用由java代 ...
- Beetl模板引擎入门教程
最近项目中有个邮件发送的需求,不过要求发送的HTML格式的邮件.由于Beetl对java语言的良好支持和很好的性能,我们决定使用Beetl作为我们的模板引擎. Beetl官网已经有了很详细的教程,所以 ...
- Vue.js——60分钟webpack项目模板快速入门
概述 browserify是一个 CommonJS风格的模块管理和打包工具,上一篇我们简单地介绍了Vue.js官方基于browserify构筑的一套开发模板.webpack提供了和browserify ...
随机推荐
- "mysql第一次查询很慢,以后就很快"的解决方案
背景 有个项目使用的mysql数据库,第一次查询很慢,大约15s左右出结果,再次查询就很快了. 分析 后面变快的原因是mysql有缓存机制,但是过上一段时间不使用缓存会过期,我个人测了一下2~3分钟一 ...
- 10.Debug
1.Debug模式 1.1 什么是Debug模式 是供程序员使用的程序调试工具,它可以用于查看程序的执行流程,也可以用于追踪程序执行过程来调试程序. 1.2 Debug介绍与操作流程 Debug调式, ...
- Java Arrays.sort()重写comparator方法
先看一下接口 Arrays.sort(T[],Comparator<? super T> c); comparator要重写compare方法 compare方法大概长这样,返回值> ...
- select 语句的基础语法
授权语法sql 一.用户的创建与使用 在管理员登录后可创建用户 --创建qfplan用户-create user qfplan identified by qfplan; --用户基本权限授权gran ...
- [bug] Nginx:src/os/unix/ngx_user.c:36:7: 错误:‘struct crypt_data’没有名为‘current_salt’的成员
参考 https://blog.csdn.net/yu_pan_love_cat/article/details/103035513 https://www.cnblogs.com/hxlinux/p ...
- [刷题] PTA 6-7 统计某类完全平方数
要求: 实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144.676等. 函数接口定义: int IsTheNumber ( const int N ); 其中 ...
- [刷题] 3 Longest Substring Without Repeating Character
要求 在一个字符串中寻找没有重复字母的最长子串 举例 输入:abcabcbb 输出:abc 细节 字符集?字母?数字+字母?ASCII? 大小写是否敏感? 思路 滑动窗口 如果当前窗口没有重复字母,j ...
- Python 送你一棵圣诞树
Python 送你一棵圣诞树 2019-01-02阅读 8800 今天是圣诞节,先祝大家圣诞快乐!??? 有人要说了,圣诞节是耶稣诞生的日子,我又不信基督教,有啥好庆祝的.这你就有所不知了,Pyt ...
- Python菜鸟100例
题目地址 #-*- codeing = utf-8 -*- #@Time : 2021/3/18 21:17 #@Author : HUGBOY #@File : 1.py #@Software: P ...
- vimdiff env.txt export.txt set.txt
1. 环境变量 简单理解了变量的概念,就很容易理解环境变量了.环境变量的作用域比自定义变量的要大,如 Shell 的环境变量作用于自身和它的子进程.在所有的 UNIX 和类 UNIX 系统中,每个进程 ...