四个元素一共多少个状态

四个元素一共多少个状态

四个元素的全部子集,用二进制表示一共有多少种?运行下面这段程序: n = 4 print(1 << n)

阅读更多 →
怎么判断第 k 位是不是 1

怎么判断第 k 位是不是 1

判断整数 s 的第 k 位是不是 1,写法是【0】。

阅读更多 →
状态压缩用二进制位表示什么

状态压缩用二进制位表示什么

状压 DP 里,一个整数的每一个二进制位表示【0】。

阅读更多 →
⚠️ 三个二维 DP 一起交

⚠️ 三个二维 DP 一起交

把网格路径、带障碍的网格路径、编辑距离都写出来,三个答案用 / 拼起来输出。 (3 行 4 列 / 同样的网格但 (1,1) 有障碍 / horse 变 ros)

阅读更多 →
写编辑距离

写编辑距离

补全 edit:第一行第一列是 0..n 和 0..m,字符相同取左上角,不同就在三个方向里取最小再加一。 输出 horse 变 ros 的步数。

阅读更多 →
⚠️ 网格里放一块石头

⚠️ 网格里放一块石头

同样 3 行 4 列,但 (1,1) 那一格有障碍,走不了。补全 paths_ob:障碍格的路径数是 0。 输出还剩几条路。

阅读更多 →
写网格路径

写网格路径

补全 paths:第一行和第一列都是 1,其余每格等于上面加左边。输出 3 行 4 列的路径数。

阅读更多 →
把 horse 改成 ros 要几步

把 horse 改成 ros 要几步

每步可以插入、删除或替换一个字符。运行下面这段程序: def edit(a, b): m = len(a) n = len(b) dp = [[0] * (n + 1) for

阅读更多 →
三行四列的网格有几条路

三行四列的网格有几条路

从左上角走到右下角,只能往右或往下。运行下面这段程序: def paths(m, n): dp = [[1] * n for _ in range(m)] for i in range

阅读更多 →
编辑距离的三种操作

编辑距离的三种操作

编辑距离允许的操作是【0】。

阅读更多 →