PAT 1065 单身狗 分数:25分 知识点:哈希

题目:1065 单身狗 - PAT (Basic Level) Practice (中文) (pintia.cn)

解析:65_哔哩哔哩_bilibili

思想

把夫妻装入到 夫妻表(map)里面,然后把参加宴会的人装到哈希表里面,如果宴会里的人在 夫妻表里 找不到,说明就是单身狗,把单身狗加到 单身里表(vector)里面,升序输出

js 复制代码
#include<bits/stdc++.h>
using namespace std;
map<string,string>mp;
vector<string>ans;
map<string,int>haxi;
string a[10005];
int main()
{
   int n;cin>>n;
    for(int i=0;i<n;i++)
    {
        string a,b;cin>>a>>b;
        mp[a]=b,mp[b]=a;
    }
    int m;cin>>m;
    for(int i=0;i<m;i++)cin>>a[i],haxi[a[i]]=1;
   
    for(int i=0;i<m;i++)
    {
        if(!haxi[mp[a[i]]])ans.push_back(a[i]);
    }

    sort(ans.begin(),ans.end());
    cout<<ans.size()<<endl;
    for(int i=0;i<ans.size();i++)
    {
        if(i)cout<<" ";  //如果i不为收首就打印空格
        cout<<ans[i];
    }
    return 0;
}
相关推荐
技术不好的崎鸣同学24 分钟前
[ACTF2020 新生赛]Exec 思路及解法
算法·安全·web安全
Full Stack Developme2 小时前
Java LRU 与 LFU 算法及应用
java·开发语言·算法
Jerry3 小时前
LeetCode 707. 设计链表
算法
C语言小火车3 小时前
C++ 堆排序深度精讲:基于完全二叉树的选择排序进化,最坏情况 O(n log n) 的稳定王者
开发语言·c++·算法·排序算法·堆排序
kebidaixu3 小时前
两轮BMS AFE SH367306 I2C 读写时序
算法
智能排队系统_头部供应商3 小时前
RK3588边缘网关改造银行排队系统实战
算法
东方佑4 小时前
临界分词的存在性与最优性:从统计临界态到神经语言模型的双语实证检验
人工智能·算法·语言模型
Fabarta4 小时前
从 0 实现 ChatGPT 风格的流式对话 UI
算法·架构
手写码匠4 小时前
手写 AI 上下文压缩系统:从零实现 Prompt 压缩与选择性上下文管理
人工智能·深度学习·算法·aigc