阿里say no~

阿里笔试0907,跪到膝盖疼~
这叫算法编程吗?苦笑~

import sys

def main():
    database = sys.stdin.readline().strip()
    query = sys.stdin.readline().strip()
    dict = {}
    for obj in database.split(';'):
        name = obj.split('_')[0]
        value = obj.split('_')[1].split('|')
        for v in value:
            if v in dict:
                dict[v].append(name)
            else:
                dict[v] = [name]
    res = {}
    for ind in dict:
        if ind in query:
            idx = query.index(ind)
            if (idx not in res) or len(ind) > len(res[idx]):
                res[idx] = ind
    # print(res)
    str = []
    start = 0
    for key in sorted(res.keys()):
        str.extend([query[start:key], ' ', res[key], '/'])
        start = key + len(res[key])
        # print(str)
        for v in sorted(dict[res[key]]):
            str.extend([v, ','])
        str[-1] = ' '
    # if start == len(query):
    #     str.pop()
    # else:
    str.append(query[start:])
    sys.stdout.write(''.join(str))

main()
#阿里巴巴#
全部评论

相关推荐

做个有文化的流氓:Offer收割机
点赞 评论 收藏
分享
09-03 17:49
已编辑
四川大学 供应链管理
迷茫的大四🐶:提前实习有些坑的,卡毕业后薪资以及能力不达预期提前违约这种
我的OC时间线
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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