PAT(甲级)2019年春季考试 7-2 Anniversary
Posted CSU迦叶
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PAT(甲级)2019年春季考试 7-2 Anniversary相关的知识,希望对你有一定的参考价值。
注意点
1. 记录是不是校友,有两种方法
(1)map<string,int> mp + mo[guest] = 1 + 判断mp[comer]
(2)set<string> st + st.insert(guest) + st.count(comer)
2. 由于只需要输出年龄最大的,并不需要维护一个优先队列
3. 理解清最后的题目含义
来者有校友,输出来的校友当中的最年长者
没有,输出来者当中的最年长者
注:年龄越大,身份中生日字符串越小
4. cin>>需和cin.get()吸收回车搭配食用
AC代码
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<iostream>
#include<queue>
#include<string>
#include<map>
#include<vector>
#include<set>
using namespace std;
const int maxn = 1001;
//set<string> st;
map<string,int> mp;
string guest,oldguest,oldGbirth = "99999999";
string comer,comerbirth,oldcomer,oldCbirth = "99999999";
int main(){
int n,m;
cin>>n;
cin.get();
while(n--){
cin>>guest;
cin.get();
// st.insert(guest);
mp[guest] = 1;
}
cin>>m;
cin.get();
int ans = 0;
while(m--){
cin>>comer;
cin.get();
comerbirth = comer.substr(6,8);
if(mp[comer]){
ans ++;
if(comerbirth<oldGbirth){
oldGbirth = comerbirth;
oldguest = comer;
}
}
if(comerbirth<oldCbirth){
oldCbirth = comerbirth;
oldcomer = comer;
}
}
printf("%d\\n",ans);
if(ans==0){
cout<<oldcomer;
}else{
cout<<oldguest;
}
return 0;
}
以上是关于PAT(甲级)2019年春季考试 7-2 Anniversary的主要内容,如果未能解决你的问题,请参考以下文章
PAT(甲级)2020年春季考试 7-2 The Judger
PAT(甲级)2019年春季考试 7-3 Telefraud Detection
PAT(甲级)2019年春季考试 7-4 Structure of a Binary Tree