部分STL_hanhan~
2024-05-10 07:39:18
#include <cstdio>
#include <cstdlib>
#include <iostream>
#include <string>
#include <map>
using namespace std;int main()
{map<string,int> word_count;//定义一个map对象empty mapword_count["Anna"]=1; //对于map容器,如果 下标所表示的键在容器中不存在,则添加新元素cout<<word_count["Anna"]<<endl;++word_count["Anna"];//对键所对应的值进行操作cout<<word_count["Anna"]<<endl;string s;
/* while (cin>>s)++word_count[s];
*///下面就是STL特有的操作啦~//insert插入新元素word_count.insert(map<string, int>::value_type("myc",1));//或者word_count.insert(make_pair("wh",1));//用make_pair简洁一点~//这个和上面没什么区别//但是insert函数只能插入新元素,就是如果试图插入的元素所对应的键已经在容器中,则insert将不作任何操作,不能对其进行赋值//查找操作://下标操作符给出了读取一个值的最简单的方法:s="myc";int x=word_count[s];//但是这样操作有危险,就是如果原先该键不在容器中,那么这种下表操作将会插入一个新的具有该键的元素//map提供了两种查找操作:count操作:if (word_count.count("Anna"))//count返回0或1,表示是否存在word_count["Anna"]++;cout<<word_count["Anna"]<<endl;//find操作:STL里所有find操作都是返回指向元素的迭代器,如果该元素不存在,则返回end迭代器int q;map<string,int>::iterator it=word_count.find("myc");//这是定义一个迭代器it,it被赋值为find的返回值if (it != word_count.end())q=it->second;cout<<q<<endl;//删除操作:erases="Anna";if (word_count.erase(s))cout<< "ok: " << s << " removed!"<<endl;else cout<< "oops: " <<s<< " not found!"<<endl;cout<<endl;//erase函数返回被删除的元素的个数,由于map容器每个键值只能出现一次,改值必然是0或1,返回0表示欲删除的元素在map中不存在//遍历整个map容器中的所有对象://先添加一点对象哈~word_count["Angel"]=3;word_count["ff"]=45;word_count["em"]=31;word_count["ububu"]=64;//首先,和其他容器一样,map提供begin和end两个运算,以生成用于遍历整个容器的迭代器//建一个迭代器map_it指向第一个元素:map<string,int>::const_iterator map_it=word_count.begin();while (map_it != word_count.end()){cout << map_it->first << "~~~~~" << map_it->second<<endl;++map_it;}return 0;
}
#include <iostream>
#include <iomanip>
#include <algorithm>
#include <string>
#include <vector>
#include <map>
#include <cmath>
using namespace std;
int main()
{int n;while(cin>>n&&n){map<string,int>ma;map<string,int>mb;string a,b;while(n--){cin>>a>>b;if(mb[a]==0){ma[a]=1;}ma[b]=0;mb[b]=1;}int sum=0;map<string ,int>::iterator it;for(it=ma.begin(); it != ma.end(); it++){if(it->second==1)sum++;}if(sum!=1)cout<<"No"<<endl;else cout<<"Yes"<<endl;}return 0;
}
转载于:https://www.cnblogs.com/stodgers/p/3898320.html
部分STL_hanhan~相关推荐
最新文章
- 新安装Ubuntu加载时提示“为/检查磁盘时发生严重错误”的解决方法
- python construct 字符串_通过字符串变量在Python中设置和获取@property方法
- 贴牌是赢在当下,创牌才会更有未来
- Python 错误和异常小结[转]
- 用人工智能来喂鱼:喂多少智能算法说了算
- Duplicate entry ‘‘ for key ‘***‘
- mysql foundrows 并发_MySQL 中的 FOUND_ROWS() 函数
- Java中将ResultSet结果集转换为List
- 高通平台手机开发之Bring-up
- 圣诞祝福网页_圣诞营销H5的多种趣味玩法(案例+模板)
- 游戏蛮牛unity权威指南全实例讲解书籍上线
- 生信软件 | FastQC(质量控制,查看测序质量)
- 非此即彼的逻辑错误_Argument常见逻辑错误及描述 【出国英语】
- HCIA/HCIP使用eNSP模拟VRRP配置实验(接入层 汇聚层 核心层 VLAN OSPF VRRP STP DHCP的综合应用)
- Android Wi-Fi CMD汇总(基于Android 6.0-7.1)
- android仿朋友圈教程,android 仿朋友圈动态 图片查看效果
- 苹果xr如何关机_iPhone XR 的实际体验如何?
- Python - JS逆向破解实现翻译软件
- 第五十一章 SQL函数 DECODE
- Fira Code字体中增加思源黑体支持中文字体
热门文章
- 表情包系列(一):程序员专属的可爱搞笑表情包+段子,进来看一看......
- Java小项目——家庭记账项目
- IDEA springboot启动报错java.lang.UnsatisfiedLinkError: no tcnative-1 in java.library.path
- 技术拯救的网瘾少年,安全盒子王松的执念 | 宅客故事
- 【面试利器】 原生JS灵魂拷问,你能答上多少(一)
- ScriptX.cab与Smsx.cab打印代码
- oracle 全文索引 优化,通过案例学调优之--Oracle 全文索引
- WebRTC视频JitterBuffer详解
- SiTime硅晶振和石英晶振的冲击和振动性能比较
- 石英晶振的频率稳定性和负载电容有什么关系?