PAT【甲级】1121

阅读: 评论:0

PAT【甲级】1121

PAT【甲级】1121

题目链接:PAT【甲级】1121
题目简述:就是给了几对配偶的编号,又给了一串参加聚会的编号,问你在这个聚会中,有多少个单身汉。

#include<bits/stdc++.h>
using namespace std;int main(){int n, m;string s1, s2;unordered_map<string, bool> match;//记录每个人是否出现过unordered_map<string, string> cp;//记录是配偶的人cin >> n;for (int i = 0; i < n;i++){//配偶登记cin >> s1 >> s2;cp[s1] = s2;cp[s2] = s1;}cin >> m;vector<string> single(m), ans;for (int i = 0; i < m;i++){cin >> single[i];match[single[i]] = true;//把出现的人都标记起来,标记其出现过}for (int i = 0; i < m;i++)if(!match[cp[single[i]]])//看这个人的cp搭档出现过没,没出现过那就可以加入答案数组ans.push_back(single[i]);sort(ans.begin(), d());//按字典序排列cout << ans.size() << endl;for (int i = 0; i < ans.size();i++){if(i != 0)cout << " ";cout << ans[i];}return 0;
}

还是比较简单的,就是需要去标记一下。第一次全部标记,第二次循环看当前id的配偶id是否在本次聚会中出现就可以了。

本文发布于:2024-01-28 09:06:43,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/17064040096322.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:PAT
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23