关于map的概念与习题
来源:互联网 发布:中日韩 影响力 知乎 编辑:程序博客网 时间:2024/06/03 22:43
map的概念:申明非原创请戳点击打开链接
pta
点击打开链接
#include<iostream>#include <map>#include <stdio.h>#include <string.h>using namespace std;int b[55];int main(){ int n,i,m,l=0; map<long long int,int>M;//map<string,int>这个构造比较慢,所以改了,不然超时 long long s1,s2,ans; scanf("%d",&n); getchar(); while(n--){ scanf("%lld %lld",&s1,&s2); M[s1]++;M[s2]++; } int t=0; map<long long int,int>::iterator it; for(it=M.begin();it!=M.end();it++) if(t<it->second){ t=it->second; ans=it->first; }for(it=M.begin();it!=M.end();it++){if(t==it->second){l++;if(ans>it->first)ans=it->first;}}if(l==1)printf("%lld %d\n",ans,t); else printf("%lld %d %d\n",ans,t,l); return 0;}pta 利用了map内部的有序性
点击打开链接
#include<iostream>#include <map>#include <stdio.h>#include <string.h>using namespace std;int main(){ int n,m,i,j,l=0,tem; map <int,int>M;scanf("%d",&n); for(i=0;i<n;i++){ scanf("%d",&m); if(m!=i||m==0) M[m]=i; }map<int,int>::iterator it;while(M.size()>1){for(it=M.begin();it!=M.end();it++){if(M[0]!=0){tem=M[0];M[0]=M[tem];M[tem]=tem;M.erase(tem);l++;}else{if(it->first!=it->second){M[0]=it->second;M[it->first]=0;l++;}}}}printf("%d\n",l); return 0;}pta QQ账户的申请与登录
点击打开链接
#include<iostream>#include <map>#include <stdio.h>#include <string.h>#include <string>using namespace std;int b[55];int main(){ int n,i,m,l=0; string s1,s2; char c; map<string,string>M; cin>>n; getchar(); while(n--){ cin>>c>>s1>>s2; if(c=='N'){ if(M.find(s1)==M.end()){ M[s1]=s2; cout<<"New: OK"<<endl; }elsecout<<"ERROR: Exist"<<endl;} else if(c=='L'){ if(M.find(s1)==M.end()) cout<<"ERROR: Not Exist"<<endl; else if(M[s1]==s2) cout<<"Login: OK"<<endl; else cout<<"ERROR: Wrong PW"<<endl; } } return 0;}
点击打开链接
#include<iostream>#include <map>#include <stdio.h>#include <string.h>using namespace std;int main(){ int n,k,m,p,i,j,l=0; long long int s1,s2; char ss1[20],ss2[20]; map <long long int,int>M;scanf("%d %d",&n,&k); while(n--){ s1=0; scanf("%s %d",ss1,&m); for(i=0;i<18;i++){ if(ss1[i]=='x') ss1[i]='9'+1; s1=s1*11+(ss1[i]-'0'); } if(!M[s1]){ if(m <k)m=k;M[s1]=m;}else{if(m <k)m=k;M[s1]+=m;} } scanf("%d",&p); for(j=0;j<p;j++){ scanf("%s",ss2); s2=0; for(i=0;i<18;i++){ if(ss2[i]=='x') ss2[i]='9'+1; s2=s2*11+(ss2[i]-'0'); } if(M.find(s2)==M.end()) printf("No Info\n"); else printf("%d\n",M[s2]); } return 0;}
关于解决冲突有线性和二次方,以后再来补,到饭点啦,啦啦啦
0 0
- 关于map的概念与习题
- 关于像素与分辨率的一些概念
- 关于xml与dom的一些概念
- 关于“场”与“帧”的概念
- 关于生产者与消费者模型的概念
- 关于分布式与集群的概念
- 关于类的习题
- 关于栈的习题
- 关于<<c与指针>>习题
- JS map 的一些概念
- 一滴水:关于Java容器类库概念及Map.put();方法的使用
- 关于组策略的习题
- 关于vector的习题(一)
- 关于vector的习题(二)
- 关于特征方程的习题
- 关于宏的概念,与函数的区别以及优缺点
- [全程建模]关于SOA与新旧概念的一点看法
- 关于DAS、NAS与SAN的一些概念
- 利用HttpClient实现接口-Java工具类(三)
- View的基础知识
- UVA1025 A Spy in the Metro
- 对VR产业的看法
- nginx 伪静态,为没有后缀名的url添加html后缀
- 关于map的概念与习题
- 详解Menu的几种菜单介绍
- HTML+CSS PC端 手机端 公用部分样式代码整理
- 剑指Offer:二叉树中和为某一值的路径
- 该怎么用好EDIUS中的调音台
- Lightoj1341——Aladdin and the Flying Carpet(算术基本定理)
- 闲话家常
- iOS开发中AFNetworking的基本使用
- 有哪些方法可以把word转换成pdf