题解 | #简单的错误记录#

简单错误记录

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

dir_path_sum = []
row_number_sum = []
dir_name = {0: ['None', 0, 0], 1: ['None', 0, 0], 2: ['None', 0, 0], 3: ['None', 0, 0], 4: ['None', 0, 0], 5: ['None', 0, 0],
            6: ['None', 0, 0], 7: ['None', 0, 0]}
list=[]
def judge_same_error(index):
    for key, value in dir_name.items():  # 相同错误记录
        if len(dir_path_sum[index].split('\\')[-1]) > 16:
            if dir_path_sum[index][len(dir_path_sum[index]) - 16:] == dir_name[key][0]:
                if row_number_sum[index] == dir_name[key][1]:
                    dir_name[key][2] += 1
                    return 1
                else:
                    return False
        else:
            if dir_path_sum[index].split('\\')[-1] == dir_name[key][0]:
                if row_number_sum[index] == dir_name[key][1]:
                    dir_name[key][2] += 1
                    return 2
                else:
                    return False
    else:
        return False

def get_dir_name():
    n = 0
    for i in range(len(dir_path_sum)):
        if len(dir_path_sum[i].split('\\')[-1]) > 16:
            if judge_same_error(i)==1:
                continue
            if (dir_path_sum[i][len(dir_path_sum[i]) - 16:],row_number_sum[i]) in list:
                continue
            list.append((dir_path_sum[i][len(dir_path_sum[i]) - 16:],row_number_sum[i]))
            dir_name[n][0] = dir_path_sum[i][len(dir_path_sum[i]) - 16:]
            dir_name[n][1] = row_number_sum[i]
            dir_name[n][2] = 1
            n += 1
            if n == 8:
                n = 0
        else:
            if judge_same_error(i)==2:
                continue
            if (dir_path_sum[i].split('\\')[-1],row_number_sum[i]) in list:
                continue
            list.append((dir_path_sum[i].split('\\')[-1],row_number_sum[i]))
            dir_name[n][0] = dir_path_sum[i].split('\\')[-1]
            dir_name[n][1] = row_number_sum[i]
            dir_name[n][2] = 1
            n += 1
            if n == 8:
                n = 0
    return n-1

while True:
    try:
        dir_path, row_number = input().split()
        if dir_name == '':
            break
        dir_path_sum.append(dir_path)
        row_number_sum.append(int(row_number))
    except:
        break

n=get_dir_name()
for key,value in dir_name.items():
    if 'None' not in value:
        if key>n:
            print(value[0],value[1],value[2])
for key,value in dir_name.items():
    if 'None' not in value:
        if key<=n:
            print(value[0],value[1],value[2])

全部评论

相关推荐

04-15 23:42
中山大学 Java
ResourceUtilization:过几天楼主就会捧着一堆offer来问牛友们该怎么选辣
点赞 评论 收藏
分享
05-07 13:29
已编辑
门头沟学院 Java
北斗导航Compass低仿版:能不能先搞清楚优先级啊,怎么可能是项目问题,项目很重要吗?又没学历 又没实习大厂凭啥约面?那玩具项目 没应用在真实生产环境下的 就算做上天又有什么用?早点找个小公司实习 拿小公司实习去投大厂实习,这才是你现在该做的
投递美团等公司9个岗位 简历被挂麻了,求建议
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务