题解 | #记票统计#

记票统计

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

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

int main() {
    int n,m, invalid=0;
    cin >> n;
    unordered_map<string,int> candi;
    vector<string> inp;
    for(int i=0; i<n; i++){
        string tmp;
        cin >> tmp;
        candi[tmp] = 0;
        inp.push_back(tmp);
    }
    
    cin >> m;
    for(int i=0; i<m; i++){
        string tmp;
        cin >> tmp;
        if(candi.find(tmp) != candi.end()){
            candi[tmp] += 1;
        }else{
            invalid += 1;
        }
    }

    for(int i=0; i<n; i++){
        cout << inp[i] << " : " << candi[inp[i]] << endl;
    }
    cout << "Invalid : " << invalid << endl;

    return 0;

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

需要注意的是输出顺序要和输入顺序相同,这就要求保存输入顺序。

其次需要注意哈希表的初始化书写格式。

全部评论

相关推荐

无敌虾孝子:喜欢爸爸还是喜欢妈妈
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务