03 2024 档案

摘要:看标签知道要用 DP。 于是开始分析。 状态:$dp(i, j, k) = $ 前 \(i\) 轮中,第 \(i\) 轮出 \(j\),一共换了 \(k\) 次牌的最大钱数。很好理解。 转移也不难,不就是不换和换两种吗! 所以,转移就是: \[dp(i, j, k) = \max \begin{ca 阅读全文
posted @ 2024-03-24 19:09 worker2011 阅读(202) 评论(0) 推荐(0)
摘要:明显是 DP。 然后就开始分析: 状态:\(dp_{ij} =\) 有 \(i\) 个袋子且匹配 \(T\) 的前缀的长度为 \(j\) 时所需的最少钱数。 匹配 \(T\) 的前缀的长度为 \(j\) 就是前 \(j\) 个字符与 \(T\) 的前 \(j\) 个字符相同。 相对简单。 然后看转移 阅读全文
posted @ 2024-03-24 19:00 worker2011 阅读(31) 评论(0) 推荐(0)
摘要:先说说暴力做法: 每次遍历一遍,看看是否满足 \(t_i + s \le c_i\),满足就计数,不满足就挂。单次时间复杂度显然为 \(O(N)\),总得时间复杂度约为 \(O(NQ)\),TLE是肯定的~ 暴力代码 // Problem: Problem 3. Maximizing Product 阅读全文
posted @ 2024-03-02 09:34 worker2011 阅读(183) 评论(0) 推荐(0)
摘要:挑战题解区最短代码 回文数?数学题!打表找规律吧…… 显然,\(1 \sim 9\) 都是回文数,先手赢(就一位你还想咋地啊)。 然后是 \(10\)。样例告诉我们,这个不行。 接着是 \(11 \sim 19\),发现随便减个 \(1 \sim 9\) 就可以变成 \(10\),而 \(10\) 阅读全文
posted @ 2024-03-02 09:33 worker2011 阅读(99) 评论(0) 推荐(0)