题解 | #数据分类处理#

数据分类处理

https://www.nowcoder.com/practice/9a763ed59c7243bd8ab706b2da52b7fd

#include <iostream>
#include <bits/stdc++.h>
#include <string>
#include <vector>
using namespace std;

int main() {
    int n;
    cin>>n;
    vector<string> vec;
    string input;
    while (n--){
        cin>>input;
        vec.push_back(input);
    }
    cin>>n;
    set<int> set;
    int R;
    while (n--){
        cin>>R;
        set.insert(R);
    }
    string result; 
    int num_all = 0;
    for (auto R : set){
        string tmp_;
        //cout<<R<<endl;
        int num = 0;
        for (int i = 0; i < vec.size(); i++){
            if (vec[i].find(to_string(R)) == string::npos){
                continue;
            }
            else{
                tmp_ += ' ' + to_string(i) + ' ' + vec[i];
                num++;
            }
        }
        if (num > 0){
            num_all += 2 + num * 2;
            result += ' ' + to_string(R) + ' ' + to_string(num) + tmp_;
        }
    }
    cout << num_all<< result;
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

练习JAVA时长两年半:qps 30000
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务