题解 | 插队

插队

https://www.nowcoder.com/practice/ed27560740114f07a23fad98afac12b6

#include<bits/stdc++.h>
using namespace std;

int main(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int n,m;
    cin>>n>>m;
    list<string> queue;
    unordered_map<string,list<string>::iterator> map;
    string s,x,y;
    for(int i=0;i<n;i++){
        cin>>s;
        queue.push_back(s);
        map[s]=prev(queue.end());
    }
    while(m--){
        cin>>x>>y;
        queue.erase(map[x]);
        auto p_y=map[y];
        auto p_x=queue.insert(p_y,x);
        map[x]=p_x;
    }
    for(const auto&p:queue)
    cout<<p<<' ';
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

10-29 18:20
济南大学 Java
用微笑面对困难:他不是人事吗,怎么净特么不干人事
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务