题解 | #记票统计#

记票统计

https://www.nowcoder.com/practice/3350d379a5d44054b219de7af6708894

#include <iostream>
#include <map>
#include <vector>

using namespace std;
typedef pair<int,int> T; //第一个参数是候选人输入顺序,第二个参数是票数

int main() 
{
    int n,m,Inval = 0;
    cin >> n;
    string c;

    vector<string> vec;
    map<string, T>hashMap;
    T tt;
    int i = 0;
    while (n--){
        cin >> c;
        auto it = hashMap.find(c);
        if (it == hashMap.end()){
            tt.first  = i++;
            tt.second = 0;
            hashMap[c] = tt;
            vec.push_back(c);
        }
        
    }

    cin >> m;
    while (m--){
        cin >> c;
        auto it = hashMap.find(c);
        if (it != hashMap.end()){
            it->second.second++;

            // cout << it->first << " "<< it->second.first <<" "<< it->second.second <<endl;
        }
        else {
            Inval++;
        }
    }


    int cnt = 0;
    while (cnt < vec.size()){
         auto it = hashMap.find(vec[cnt++]);
         if (it != hashMap.end()){
            cout << it->first << " : "  << it->second.second << endl;
         }
    }

    cout << "Invalid" << " : " << Inval <<endl;

    return 0;
}

全部评论

相关推荐

07-02 13:50
闽江学院 Java
点赞 评论 收藏
分享
点赞 评论 收藏
分享
07-02 18:09
门头沟学院 Java
苍穹外卖和谷粒商城这俩是不是烂大街了,还能做吗?
想去重庆的鸽子在吐槽:你不如把这俩做完自己搞明白再优化点再来问 何必贩卖焦虑
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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