题解 |map容器解决绝大多数的查找问题

魔咒词典

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

//map容器解决绝大多数的查找问题,而且由于底层是红黑树,时间复杂度较低
#include "stdio.h"
#include "string"
#include "map"
using namespace std;

int main(){
    char buf[102];
    map<string,string> myMap1;//魔咒为键
    map<string,string> myMap2;//解释为键
    while (true){
        fgets(buf,102,stdin);
        string str = buf;str.pop_back();
        if (str == "@END@")
            break;
        else{
            int pos = str.find(']');
            string magic = str.substr(1,pos-1);
            string expression = str.substr(pos+2);
            myMap1[magic] = expression;
            myMap2[expression] = magic;
        }
    }
    int m;
    scanf("%d",&m);
    getchar();
    char buf2[102];
    for (int i = 0; i < m; ++i) {
        fgets(buf2,82,stdin);
        string HaLi = buf2;HaLi.pop_back();
        if (HaLi[0] == '['){ //问的是咒语的含义,查map1
            HaLi = HaLi.substr(1,HaLi.size()-2);
            map<string,string>::iterator it = myMap1.find(HaLi);
            if (it != myMap1.end())
                printf("%s\n",it->second.c_str());
            else
                printf("what?\n");
        } else{ //问的是功能对应的咒语,查map2
            map<string,string>::iterator it = myMap2.find(HaLi);
            if (it != myMap2.end())
                printf("%s\n",it->second.c_str());
            else
                printf("what?\n");
        }
    }
}

全部评论

相关推荐

01-12 14:08
门头沟学院 Java
有寒假来武汉小米总部实习的大学生嘛,我也是小米的员工,想找合租舍友,仅限女生可免租半月,二月初可入住,也就是说房租是2.15开始算的哦~也可以将行李提前放过来~房屋介绍:1、房子情况:有电梯;租的是三室一厅一卫一厨,&nbsp;但是有个卧室比较小,不打算找人,只住两个人就可以了;衣柜也很大,可以放下很多衣服;房屋采光真的很好,早上起来可以在床上晒太阳的那种,十分惬意(夏季晚上十分好看!)2.&nbsp;楼下离我们很近的地方有小吃街和一个两层大超市(大概步行两分钟多就可以走到)&nbsp;,还有一个新开的麦当劳,晚上可以去吃小吃,购买物资也可以去大超市;3.&nbsp;房子基本设施齐备(洗衣机,冰箱,空调,油烟机,热水器);4.&nbsp;我有稳定的工作,生活中很注意卫生,周末有时间会自己做饭,可以投喂哦~5.&nbsp;出行:距离公交站步行10分钟不到,距政务中心,武汉小米总部三站(晚上我都是走回来的,很近的~);一个比较进的地铁,距离大概1km左右;出入我觉得很方便;6.&nbsp;房租:1150每月,押一付二,无物业费,也没有中介费和其他额外费用。7.&nbsp;民用水电燃气,用多少交多少,水电费正常平摊。希望你是:1.&nbsp;女生(本人女),不带异性回家,如有同性朋友来玩,最多过夜一晚;2.&nbsp;爱干净,讲卫生,作息正常,不吵闹,有稳定工作;3.&nbsp;好沟通,有任何问题一定要沟通,不要闷着!中介勿扰,非诚勿扰!!!希望不要浪费彼此的时间诚心有意向的可以联系我看房
租房找室友
点赞 评论 收藏
分享
牛客76783384...:字节:不要放箭,活捉赵子龙
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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