轻松的编程学习
首页
题库
学习路径
在线商城
能力地图
下载应用
登录 / 注册
菜单
再写剪枝的版本
👁️ 0 人浏览
💬 0 人评论
❤️ 添加收藏
补全
pruned
:
放上去之前就检查
——和
path
最后一个相差 1 就跳过,不往下走。
把解的个数和结点数拼起来输出
(n = 5)。
提交你的答案
请登录后提交答案。
去登录
← 先写不剪枝的版本
⚠️ 省了多少,且解必须一样 →
更多题目
让程序说出"你好"
让程序欢迎你
哪个命令能显示内容
哪里是指令,哪里是结果
让程序说出你的名字
这个程序会显示什么
代码编辑器
语言:
python3
c11
cpp17
Ctrl
+
Enter
运行
👩🏫 AI
▶ 运行代码
重置代码
打印代码
def pruned(n): st = {"c": 0, "v": 0} path = [] used = [False] * (n + 1) def dfs(): st["v"] += 1 if len(path) == n: st["c"] += 1 return for x in range(1, n + 1): if used[x]: continue # TODO: 剪枝 —— path 非空且和 path[-1] 相差 1 就跳过 # TODO: 选择、递归、撤销 pass dfs() return st["c"], st["v"] c, v = pruned(5) print(str(c) + "/" + str(v))
本次输入:
输出:
👩🏫
AI
请登录后使用 AI 老师
×
登录后可获得解题思路、提示与错误分析。
去登录
关闭
🎉
恭喜你,回答正确!
系统判定:正确
我知道了
💬 题目评论
提交
全部评论
全部评论