题解 | #简单错误记录#

简单错误记录

https://www.nowcoder.com/practice/2baa6aba39214d6ea91a2e03dff3fbeb

#include <deque>
#include<iostream>
#include <map>

using namespace std;
int main(){
    string str;
    map<string, int> mymap;
    deque<string> deq;
    while(getline(cin, str)){
	  // 首先解析字符串
        int pos = str.find_last_of('\\');
        str = str.substr(pos+1);
        pos = str.find_last_of(' ');
        if(pos > 16){
            str = str.substr(pos-16);
        }
		// 把数据存放在双端队列中
        if(mymap.find(str) == mymap.end()){
            deq.push_back(str);
        }
		// 维持双端队列中只有八条数据。
        if(deq.size() > 8){
            deq.pop_front();
        }
        mymap[str]++;

    }

    for(auto s : deq){
        cout << s << " " << mymap[s] << endl;
    }
    return 0;
}

全部评论

相关推荐

notbeentak...:真的nc,算毕业6月份,要给这种b公司打半年多白工😅
点赞 评论 收藏
分享
09-01 11:31
门头沟学院 Java
buul:七牛云的吧,感觉想法是好的,但是大家没那么多时间弄他这个啊。。。不知道的还以为他是顶尖大厂呢还搞比赛抢hc,只能说应试者的痛苦考察方是无法理解的,他们只会想一出是一出
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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