摘要:
这道题直接状压就行,\(f_{S}\) 表示当前状态是 \(S\) 最少扣分数。 // #define FILE_INPUT #include <iostream> #include <string> #include <vector> #include <cstdio> #include <cst 阅读全文
posted @ 2025-02-02 16:06
wh2011
阅读(19)
评论(0)
推荐(0)
摘要:
设 \(f_i\) 表示对于前 \(i\) 组,必定选第 \(i\) 个积木的最大可能高度,\(f_i=\max f_k+z_{i}\) 然后一开始往数组中扔进 \(6\) 个不同面的积木,然后拍个序去除后效性即可(虽然本来就没有后效性)。 注意:位于下面的积木的长和宽必须严格大于位于上面的积木的长 阅读全文
posted @ 2025-02-02 15:23
wh2011
阅读(13)
评论(0)
推荐(0)
摘要:
做法一:直接模拟 空间复杂度:\(O(10^6)\) // #define FILE_INPUT #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; #d 阅读全文
posted @ 2025-02-02 15:01
wh2011
阅读(12)
评论(0)
推荐(0)
摘要:
看到数据范围 \(n\times m \le 5\times 10^7\) 就可以猜出来状态肯定是 \(f_{i, j}\) 的,然后用滚动数组优化,或者直接用类似于 \(01\) 背包的方法优化。 我们设 \(f_{i, j}\) 表示,对于前 \(i\) 个数,已经找到了 \(j\) 个组,且第 阅读全文
posted @ 2025-02-02 13:31
wh2011
阅读(10)
评论(0)
推荐(0)

浙公网安备 33010602011771号