轻松的编程学习
首页
题库
学习路径
在线商城
能力地图
下载应用
登录 / 注册
菜单
⚠️ 检查有没有漏删标记
👁️ 3 人浏览
💬 0 人评论
❤️ 添加收藏
解决之后(取对方版),检查两样:行数是不是回到 6、结果里还有没有残留的标记行。两个布尔值用
/
拼起来输出。
提交你的答案
请登录后提交答案。
去登录
← 写一个 resolve
"两边都要"的解法 →
更多题目
让程序说出"你好"
让程序欢迎你
哪个命令能显示内容
哪里是指令,哪里是结果
让程序说出你的名字
这个程序会显示什么
代码编辑器
语言:
python3
c11
cpp17
Ctrl
+
Enter
运行
👩🏫 AI
▶ 运行代码
重置代码
打印代码
base = ['HOST = "localhost"', 'PORT = 8000', 'DEBUG = False', 'TIMEOUT = 30', 'RETRY = 1', 'LOG = "app.log"'] ours = ['HOST = "localhost"', 'PORT = 8080', 'DEBUG = True', 'TIMEOUT = 60', 'RETRY = 1', 'LOG = "main.log"'] theirs = ['HOST = "0.0.0.0"', 'PORT = 9000', 'DEBUG = True', 'TIMEOUT = 30', 'RETRY = 3', 'LOG = "sys.log"'] def classify(b, o, t): # TODO: 两边一样 → same;我方没改 → theirs;对方没改 → ours;剩下的 → conflict return "" def merge3(base, ours, theirs): # TODO: 逐行判断:conflict → 依次放 <<<<<<< ours / o / ======= / t / >>>>>>> theirs # TODO: theirs → 放 t;其余 → 放 o return [] def is_marker(line): # TODO: 三种标记行都要算上:<<<<<<< / ======= / >>>>>>>(现在只认了一种) return line.startswith("<<<<<<<") def resolve(merged, take): # TODO: 遇到 <<<<<<< 就找出 ======= 和 >>>>>>> 的位置 # TODO: take 为 "ours" 取上半段、"theirs" 取下半段、"both" 两段都留;三行标记都不要 # TODO: 不是冲突块的行照原样放进去(现在是整份原样交回,什么都没解决) return list(merged) r = resolve(merge3(base, ours, theirs), "theirs") print(str(len(r) == 6) + "/" + str(any(is_marker(l) for l in r)))
本次输入:
输出:
👩🏫
AI
请登录后使用 AI 老师
×
登录后可获得解题思路、提示与错误分析。
去登录
关闭
🎉
恭喜你,回答正确!
系统判定:正确
我知道了
💬 题目评论
提交
全部评论
全部评论