题解 | #简单错误记录#

简单错误记录

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

import sys

errors = list()
for line in sys.stdin:
    a = line.split()
    pt, col = a
    col = int(col)
    name = pt.replace('/', '\\').split('\\')[-1]
    if len(name) > 16:
        name = name[-16:]
    if not errors:
        frist_err_data = dict(err=name, col=col, num=1)
        errors.append(frist_err_data)
    else:
        last_err_name = [i['err'] for i in errors]
        if name in last_err_name:
            index = [idx for idx, i in enumerate(errors) if i['err'] == name]
            col_list = [errors[index[i]]['col'] for i in range(len(index))]
            if col in col_list:
                col_index = col_list.index(col)
                add_index = index[col_index]
                errors[add_index]['num'] += 1
            else:
                new_err_data = dict(err=name, col=col, num=1)
                errors.append(new_err_data)
        else:
            new_err_data = dict(err=name, col=col, num=1)
            errors.append(new_err_data)
for err in errors[-8:]:
    print(*list(err.values()), sep=' ')

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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