题解 | 魔咒词典

魔咒词典

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

#include <iostream>
#include<map>
#include <vector>
using namespace std;

int main() {
    string s1;
    map<string, string>m1;
    map<string, string>m2;
    while (getline(cin, s1)) { // 注意 while 处理多个 case
        if (s1 == "@END@")break;
        int pos = s1.find(']');
        string s2 = s1.substr(0, pos + 1);
        string s3 = s1.substr(pos + 2, s1.length() - (pos + 2));
        m1[s2] = s3;
        m1[s3] = s2.substr(1, s2.length() - 2);
    }
    int N;
    cin >> N;
    cin.ignore();
    for (int i = 0; i < N; i++) {
        getline(cin, s1);

        if (m1.find(s1) != m1.end()) {
            cout << m1[s1] << endl;
        } else {
            printf("what?\n");
        }

    }

}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

华泰证券信息技术部 软开 月base2.2w,年终要看当年收益,HR讲往年应届平均35W
点赞 评论 收藏
分享
这一生如履薄冰:美赛s就别写了吧
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务