You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Code Jam Foregone Solution 代码提交判错原因排查

Foregone Solution 代码判错原因排查

你的核心拆分逻辑(把每一位的4拆成3+1,其余位拆成原数字+0,保证两个加数都不含4且相加等于原数)是正确的,判错完全是输入输出格式不符合题目要求导致的,具体问题如下:

  • 未按题目规则处理多测试用例:题目输入第一行是整数T,代表总共有T组待拆分的数字,后续T行才是具体的待拆分数值。你的代码直接读取第一行内容作为待拆分数字,既没有读取T值,也没有循环处理所有测试用例,遇到官方多组用例的测试集时,只会输出第一行T值的拆分结果,后续所有用例完全没有处理。
  • 输出格式不符合规范:题目要求每组用例的输出必须严格遵循Case #序号: A B的格式,你的代码直接输出两个拆分后的数字,缺少要求的Case前缀和对应编号,平台自动判题时会直接判定格式不匹配。
  • 拆分出的第二个数存在前导零问题:比如输入14时,你的代码生成的b是字符串01,带有前导零,不符合题目要求输出无前置零正整数的规则。

修正后可通过的代码

T = int(input())
for case_id in range(1, T + 1):
    num = input().strip()
    a = []
    b = []
    for c in num:
        if c == "4":
            a.append("3")
            b.append("1")
        else:
            a.append(c)
            b.append("0")
    res_a = "".join(a)
    res_b = "".join(b).lstrip("0")
    print(f"Case #{case_id}: {res_a} {res_b}")

针对官方样例输入:

3
4
940
4444

代码会输出完全匹配要求的结果:

Case #1: 3 1
Case #2: 930 10
Case #3: 3333 1111

内容的提问来源于stack exchange,提问作者Legend

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 03:39:24