上一页 1 2 3 4 5 6 7 8 9 10 ··· 16 下一页
摘要: 思路 首先发现对于操作 1 显然进行一次就可以将 \(t\) 变为一个回文序列。 那么,不难发现如果进行两次操作 1,在进行一次操作 2,是与进行一次操作 1,在进行两次操作 2 等效的。 所以考虑处理出 \(tt\) 表示 \(t\) 进行操作 1 后的序列。 不妨枚举一个 \(x,y\) 分别表 阅读全文
posted @ 2024-06-26 12:37 WBIKPS 阅读(28) 评论(0) 推荐(0)
摘要: 思路 Part 1 考虑 DP。 令 \(dp_i\) 表示 \(N\) 为 \(i\) 时的答案。 则有 \(dp_i = 2 \times dp_{i - 1} + dp_{i - 3}\)。 因为,我们想一想,如果我们的最后一个放的 I 形方块,那么可以放在最前面和最后面,因此我们还需要加上 阅读全文
posted @ 2024-06-26 12:37 WBIKPS 阅读(83) 评论(0) 推荐(0)
摘要: 不知道为什么都做这么复杂。 思路 考虑二分第 \(k\) 小的数 \(x\),思考怎么 check。令小于 \(x\) 的数量为 \(num\),则如果 \(num < k\) 则返回 true,否则返回 false。 问题转化为了求 \(num\)。定义 \(dp_i\) 表示分母为 \(i\) 阅读全文
posted @ 2024-06-26 12:37 WBIKPS 阅读(25) 评论(0) 推荐(0)
摘要: 思路 标准博弈论,我们假定 \(dp_i\) 表示当前棋子在 \(i\) 的时候,先手必赢为 \(1\),先手必负为 \(-1\),无法确定为 \(0\)。 那么我们看图分析一下: 在终点为 \(5\) 的情况下:不难的出 \(dp_5 = 1,dp_4 = -1,dp_7 = -1,dp_3 = 阅读全文
posted @ 2024-06-26 12:37 WBIKPS 阅读(32) 评论(0) 推荐(0)
摘要: 思路 首先有一个比较典的转化,因为本题中,有坐标和时间两种限制,于是考虑离线下来,按照时间依次进行操作。 我们可以考虑二分答案 \(len\) 则 check 函数就是判断 \([x - len,x + len]\) 区间中是否所有 \(k\) 中店铺都出现过。 有一个比较巧妙的方法,记录每一种店铺 阅读全文
posted @ 2024-06-26 12:37 WBIKPS 阅读(36) 评论(0) 推荐(0)
摘要: 思路 首先考虑两个瓶子容量分别为 \(x,y\) 互相倒的情况。发现每一次都是将剩余的液体减少 \(x\) 或者 \(y\),因此这两个瓶子的贡献就是 \(ax + by\),其中 \(a,b\) 是常数。 根据裴蜀定理,\(\min\{ax + by\} = \gcd(x,y)\)。拓展到多个数, 阅读全文
posted @ 2024-06-26 12:37 WBIKPS 阅读(25) 评论(0) 推荐(0)
摘要: 思路 定义 \(dp_i\) 表示在 \(a_{1 \sim i}\) 中选数,在满足题意的情况下的最长长度。 那么,我们在转移 \(dp_i\) 的时候,可以枚举一个 \(j\) 表示在 \(b\) 中,当前数的上一个数在 \(a\) 中的位置。 如果有 a[i] & a[j] != 0,那么,有 阅读全文
posted @ 2024-06-26 12:37 WBIKPS 阅读(41) 评论(0) 推荐(0)
摘要: 思路 区间 DP 好题。定义 \(dp_{i,j}\) 表示将 \(s_{i \sim j}\) 折叠能获得的最短长度。 那么,依旧是枚举一个中间点 \(k\),那么,我们将 \(dp_{i,j}\) 分为了 \(dp_{i,k}\) 和 \(dp_{k + 1,j}\) 两部分。 对于这两部分,可 阅读全文
posted @ 2024-06-26 12:37 WBIKPS 阅读(38) 评论(0) 推荐(0)
摘要: 思路 定义 \(dp_{i,j}\) 表示刷前 \(i\) 块木板,花了 \(j\) 次,能够正确粉刷的数量。 那么,显然 \(dp_{i,j}\) 等于 \(dp_{i - 1,j - k}\) 加上第 \(i\) 行刷 \(k\) 次能够正确粉刷的数量。 那么,考虑用另一个 DP 维护。定义 \ 阅读全文
posted @ 2024-06-26 12:37 WBIKPS 阅读(58) 评论(0) 推荐(0)
摘要: 思路 首先,\(A\) 和 \(B\) 只会移动一个,那么,我们分开来算,我们先假定 \(B\) 会动。 不妨令 \(A\) 与 \(b\) 连边的端点为 \(x,y\)。如果有线段 \(pq\) 能与 \(xy\) 相交,一定满足如下其中一条规律: \(p < x \wedge q > y\) \ 阅读全文
posted @ 2024-06-26 12:34 WBIKPS 阅读(29) 评论(0) 推荐(0)
摘要: 思路 我们定义 \(dp_i\) 为选取前 \(i\) 个人所得到的最大的价值。 那么,我们能得出一个很简单的状态转移方程: \[ dp_i = \max(dp_j + a \times (\sum_{k = j + 1}^{i}x_i)^2 + b \times (\sum_{k = j + 1} 阅读全文
posted @ 2024-06-26 12:34 WBIKPS 阅读(37) 评论(0) 推荐(0)
摘要: 题意 给定一个无向图,问最少在几个点上设置出口,可以使得不管其他哪个点坍塌,其余所有点都可以与某个出口相连。 思路 对于这道题,我们有以下几个技巧: 对于每一个连通块出口数量必须大于等于 \(2\)。 因为,如果出口数量为 \(1\),那么,如果刚好在出口坍塌了,就出不去了。 分别看每一个连通块。 阅读全文
posted @ 2024-06-26 12:34 WBIKPS 阅读(54) 评论(0) 推荐(0)
摘要: 简化版题意 有一个四元组:\((x,xk,xk ^ 2,xk ^ 3)\) 满足以下条件: \(k > 1\) \(x \leq m\) \(xk \leq m\) \(xk ^ 2 \leq m\) \(xk ^ 3 \leq m\) 现在给定满足条件的四元组的个数 \(n\),求:最小的 \(m 阅读全文
posted @ 2024-06-26 12:34 WBIKPS 阅读(23) 评论(0) 推荐(0)
摘要: 思路 首先,我们考虑 \(k = 0\) 的情况: \[ 1 \times 1 + 1 \times 2 + \dots + 1 \times n + \dots + n \times 1 + n \times 2 + \dots + n \times n \]然后用乘法分配律化简一下,得: \[ 阅读全文
posted @ 2024-06-26 12:34 WBIKPS 阅读(30) 评论(0) 推荐(0)
摘要: 思路 我们定义 \(dp_i\) 表示运输前 \(i\) 个工厂,且在第 \(i\) 个位置建立仓库所消耗的最小代价。 那么,我们可以得出状态转移方程: \[ dp_i = \min(dp_j + x_i \times (\sum_{k = j + 1}^{i}p_k) - \sum_{k = j 阅读全文
posted @ 2024-06-26 12:34 WBIKPS 阅读(44) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 9 10 ··· 16 下一页