华为第三题

if __name__ == '__main__':
    functions, present, x = input().strip().split(';')
    present_dict = dict()
    present = present.split(',')
    visited = set()
    for p in present:
        key, val = p.split('=')
        present_dict[key] = val
        try:
            int(val)
            visited.add(key)
        except:
            pass
    functions = functions.split(',')
    func_dict = dict()
    #  所有表达式
    for f in functions:
        key, val = f.split('=')
        for pk, pv in present_dict.items():
            val = val.replace(pk, pv)
        val = val.replace('{', '')
        val = val.replace('}', '')
        try:
            func_dict[key] = str(int(eval(val)))
            visited.add(key)
        except:
            func_dict[key] = val
    # 所有表达式都替换为数字
    while len(visited) < len(func_dict) + len(present_dict):
        for key, val in func_dict.items():
            if key not in visited:
                for fk, fv in func_dict.items():
                    val = val.replace(fk, fv)
                for pk, pv in present_dict.items():
                    val = val.replace(pk, pv)
                val = val.replace('{', '')
                val = val.replace('}', '')
                try:
                    func_dict[key] = str(int(eval(val)))
                    visited.add(key)
                except:
                    func_dict[key] = val
        for key, val in present_dict.items():
            if key not in visited:
                for fk, fv in present_dict.items():
                    val = val.replace(fk, fv)
                for pk, pv in present_dict.items():
                    val = val.replace(pk, pv)
                val = val.replace('{', '')
                val = val.replace('}', '')
                try:
                    present_dict[key] = str(int(eval(val)))
                    visited.add(key)
                except:
                    present_dict[key] = val


    # 所求表达式替换
    for pk, pv in present_dict.items():
        x = x.replace(pk, pv)
    for fk, fv in func_dict.items():
        x = x.replace(fk, fv)
    x = x.replace('{', '')
    x = x.replace('}', '')
    print(eval(x))

再求一个第二题ac的答案哇~~

#华为##笔试题目#
全部评论
if __name__ == "__main__":     bd, id, res = input().split(';')     ids = id.split(',')          for id in ids:         a,b = id.split('=')         bd = bd.replace(a,b)     bds = bd.replace('{','').replace('}','').split(',')     temp_dict = dict([ bd.split('=') for bd in bds])     s = temp_dict[res]     temp_dict.pop(res)     for k,v in temp_dict.items():         s = s.replace(k, '('+v+')')     print(int(eval(s)))
点赞 回复 分享
发布于 2019-09-07 21:25
第二题,求个AC啊
点赞 回复 分享
发布于 2019-09-07 21:17

相关推荐

今天 22:11
武汉大学 Java
点赞 评论 收藏
分享
10-17 16:48
已编辑
南方科技大学 图像识别
记录一下找工作的感受吧。鼠鼠硕士阶段搞的图像处理,用了深度学习比较成熟、简单的模型,技能点主要在科研上研二下学期准备找工作,先投AI、机器学习的暑期实习,没有结果。当时不想投开发,觉得太累了。后面找不到工作,就转开发了。但是八股不会,刷题不精,挂了好多笔试面试。在一个线下宣讲会获得了一个小科技公司的日常实习机会。我的实习公司,70%是应届生,共同话题很多。我问了算法部门刚入职的同事,一位同事硕士阶段和我的成果差不多。他们毕业院校一般,觉得算法很难,之后想换工作。我也有几个985硕科班算法的朋友,他们去找工作🈚压力。我等凡人不跟他们竞争了。工位旁还有几位java开发工程师,我需要他们提供接口给我,大概也了解了他们的工作内容。一个同事说弄懂java虚拟机最重要。而我看那些知识点觉得很枯燥,我想我还是稍喜欢现在的工作,主要画画ui。鼠鼠也蛮喜欢科研,但是科研压力很大,想出好文章有时违背本心。而且鼠鼠方向和工业界联系不紧密,挣不了大钱。如果出国的话,🇺🇸现在环境比较糟糕,签证很难弄。好几个朋友想出国申博,还没结果。祝他们好运吧,我就不想继续卷了。同学院其他找工作的女生同学,只能找营销,产品经理之类的岗位,她们不是很喜欢。我是本科有一些开发经历,加上学历过关,才能转码的。男生稍微好一点,但是专业原因找工作也是有一些困难。大概就记录到这里吧,供大家参考,尤其是和我一样不上不下背景,正在纠结的朋友。截图随便配的,这家公司投了之后懒得做测评,今天收到面试邀请,我懒得去了。位置在惠州,觉得很远。u1s1,开发的工作真的好多,不论老家,还是惠州这种城市,还是深圳,都很多。
点赞 评论 收藏
分享
评论
点赞
5
分享

创作者周榜

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