写数独的可行性检查

场景:~/work/bt/sudoku.cpp 读入一个 9×9 数独局面(0 表示空格)和若干询问「r c d」,回答数字 d 能不能填进第 r 行第 c 列。can_place 还没写。 任务:补全 can_place:同一行、同一列、

开始练习 →

重叠子问题是什么意思

说一个问题有「重叠子问题」,是指【0】。

开始练习 →

最优子结构是什么意思

第 1 步:要算 f(4) 第 2 步:拆成 f(3) 和 f(2) 第 3 步:再往下拆一层 第 4 步:拆到最底 第 5 步:f(2) 被算了两遍 第 6 步:f(1) 更是算了三遍 f4 f3 f2 f2 f1 f1 f0 f1 f0

开始练习 →

用 DP 要同时满足哪两条

一个问题能用动态规划,要同时具备【0】。

开始练习 →

自顶向下和自底向上差在哪

DP 的两种写法,区别是【0】。

开始练习 →

用 DP 要付什么代价

动态规划省下了重复计算,代价是【0】。

开始练习 →

爬十级楼梯有几种走法

每次能上 1 级或 2 级,爬到第 10 级一共有几种走法? 运行下面这段程序: #include <algorithm> #include <iostream> #include <string> #i

开始练习 →

朴素递归的 fib 慢在哪

第 1 步:f(4) 的整棵递归树 第 2 步:按调用顺序数到第 3 次 第 3 步:按调用顺序数到第 6 次 第 4 步:按调用顺序数到第 9 次 第 5 步:一共 9 次,好几次是重复 f4 f3 f2 f2 f1 f1 f0 f1 f

开始练习 →

递归树上的重复怎么来的

递归树上出现重复的子问题,是因为【0】。

开始练习 →

朴素 fib 的调用次数怎么长(C++)

n 每加一,朴素 fib 的调用次数大致【0】。

开始练习 →