题解 | #简单错误记录#

简单错误记录

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

#include<bits/stdc++.h>

using namespace std;
string get_file_name_16(string path);
string get_file_name(string path);
int main(){
    
    string str;
    int line_num;
    vector<string> files;
    vector<string> tfilenames;
    vector<int> nums; 
    vector<int> counts;
    while(cin>>str>>line_num){
        int flag=0;
        string file_name = get_file_name(str);
        for(int i=0;i<files.size();++i){
            if(files[i].compare(get_file_name_16(str))==0&&nums[i]==line_num){
                counts[i]++;
                flag=1;
                break;
            }
        }
        if(flag==0){
            tfilenames.push_back(get_file_name(str));
            files.push_back(get_file_name_16(str));
            nums.push_back(line_num);
            counts.push_back(1);
        }
    }
    int len_=nums.size();
    int start = 0;
    if(len_>8)
        start = len_-8;
    for(int i=start;i<nums.size();++i){
        cout<<files[i]<<" "<<nums[i]<<" "<<counts[i]<<endl;
    }
    
    return 0;
}


string get_file_name_16(string path){
    int index =path.find_last_of('\\');
    string name = path.substr(index+1);
    int len = name.size();
    if(len>16)
        name = name.substr(len-16);
    return name;
}

string get_file_name(string path){
    int index =path.find_last_of('\\');
    string name = path.substr(index+1);
    return name;
}
全部评论

相关推荐

俺要找实习:第一次找实习,我还以为都苛刻成这样了呢
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务