华为笔试9月20日100+100+90

机试前两题不难,第三题坑好多,最后也没AK

做了个比较简洁的实现,用python的locals()+eval(),其实可以很好处理加减乘除。

import sys
d = locals()
for line in sys.stdin:
    line = line.strip().replace("/", "//")
    if line.startswith("let"):
        try:
            name, expr = line[4:].split(" = ")
            # d[name] = eval(expr)
            l = expr.split()
            while len(l) > 2:
                x = eval(" ".join(l[:3]))
                l = [str(x)] + l[3:]
            if not name.isidentifier() or len(l) != 1:
                raise SyntaxError
            d[name] = int(l[0])
        except NameError:
            d[name] = "UNDEF"
        except:
            print("<syntax-error>")
    elif line.startswith("out"):
        name = line[4:-1]
        if not name.isidentifier():
            print("<syntax-error>")
        elif name not in d or d[name] == "UNDEF":
            print("<undefined>")
        elif d[name] < -2147483648:
            print("<underflow>")
        elif d[name] > 2147483647:
            print("<overflow>")
        else:
            print(d[name])
    else:
        print("<syntax-error>")

#华为#
全部评论
举办了哥,我才100+45+45
3 回复 分享
发布于 2023-09-20 22:15 北京
这代码写的真漂亮
2 回复 分享
发布于 2023-09-21 03:25 浙江
这代码太简洁了 大佬
点赞 回复 分享
发布于 2023-09-21 23:10 北京

相关推荐

行云流水1971:这份实习简历的优化建议: 结构清晰化:拆分 “校园经历”“实习经历” 板块(当前内容混杂),按 “实习→校园→技能” 逻辑排版,求职意向明确为具体岗位(如 “市场 / 运营实习生”)。 经历具象化:现有描述偏流程,需补充 “动作 + 数据”,比如校园活动 “负责宣传” 可加 “运营公众号发布 5 篇推文,阅读量超 2000+,带动 300 + 人参与”;实习内容补充 “协助完成 XX 任务,效率提升 X%”。 岗位匹配度:锚定目标岗位能力,比如申请运营岗,突出 “内容编辑、活动执行” 相关动作;申请市场岗,强化 “资源对接、数据统计” 细节。 信息精简:删减冗余表述(如重复的 “负责”),用短句分点,比如 “策划校园招聘会:联系 10 + 企业,组织 200 + 学生参与,到场率达 85%”。 技能落地:将 “Office、PS” 绑定经历,比如 “用 Excel 整理活动数据,输出 3 份分析表;用 PS 设计 2 张活动海报”,避免技能单独罗列。 优化后需强化 “经历 - 能力 - 岗位需求” 的关联,让实习 / 校园经历的价值更直观。 若需要进一步优化服务,私信
实习,投递多份简历没人回...
点赞 评论 收藏
分享
评论
5
13
分享

创作者周榜

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