随笔分类 -  搜索-记忆化搜索

摘要:题目链接 题目 Quite recently a creative student Lesha had a lecture on trees. After the lecture Lesha was inspired and came up with the tree of his own whic 阅读全文
posted @ 2022-04-27 17:35 zhangtingxi 阅读(62) 评论(0) 推荐(0)
摘要:数位dp的引入 首先假设有一天,我们遇见一道题: 求在 \([a,b]\) 的区间里,满足条件的数有多少个。 如果我们没学过数位dp,我们会打出这样一个暴力: for(i=a; i<=b; ++i) if(check(i)) ++ans; 这样的时间复杂度是 \(O(n\times \text{ch 阅读全文
posted @ 2022-01-18 17:18 zhangtingxi 阅读(425) 评论(0) 推荐(1)
摘要:题目链接 题目 原题来自:ZJOI 2010 给定两个正整数 \(a\) 和 \(b\),求在 [\(a,b\)] 中的所有整数中,每个数码 (\(digit\)) 各出现了多少次。 思路 首先在数位dp中,对于当前枚举的数,乘上后面的方案数。 那么后面的数如何多次计算呢? 我们发现这些数具有传递性 阅读全文
posted @ 2022-01-13 14:26 zhangtingxi 阅读(210) 评论(0) 推荐(0)
摘要:题目链接 题目 单身! 依然单身! 吉哥依然单身! DS 级码农吉哥依然单身! 所以,他平生最恨情人节,不管是 \(214\) 还是 \(77\),他都讨厌! 吉哥观察了 \(214\) 和 \(77\) 这两个数,发现: \(2+1+4=7\) \(7+7=7×2\) \(77=7 × 11\) 阅读全文
posted @ 2022-01-13 14:21 zhangtingxi 阅读(492) 评论(0) 推荐(0)
摘要:题目链接 题目 由于科协里最近真的很流行数字游戏,某人又命名了一种取模数,这种数字必须满足各位数字之和 \(\bmod N\) 为 \(0\)。现在大家又要玩游戏了,指定一个整数闭区间 [\(a,b\)],问这个区间内有多少个取模数。 思路 数位dp。 三个转态:当前第几位?现在这一位是否有上限?当 阅读全文
posted @ 2022-01-12 14:46 zhangtingxi 阅读(258) 评论(0) 推荐(0)
摘要:题目链接 题目 不含前导零且相邻两个数字之差至少为 \(2\) 的正整数被称为 windy 数。windy 想知道,在 \(a\) 和 \(b\) 之间,包括 \(a\) 和 \(b\) ,总共有多少个 windy 数? 思路 数位dp,用 \(b\) 以内的减去 \(a-1\) 以内的就是答案。 阅读全文
posted @ 2022-01-12 14:12 zhangtingxi 阅读(53) 评论(0) 推荐(0)
摘要:题目链接 题目 科协里最近很流行数字游戏。某人命名了一种不降数,这种数字必须满足从左到右各位数字成小于等于的关系,如 \(123\),\(446\)。现在大家决定玩一个游戏,指定一个整数闭区间 [\(a,b\)],问这个区间内有多少个不降数。 思路 数位dp,用 \(b\) 以内的减去 \(a-1\ 阅读全文
posted @ 2022-01-12 14:10 zhangtingxi 阅读(291) 评论(0) 推荐(0)
摘要:题目链接 题目 将一个8*8的棋盘进行如下分割:将原棋盘割下一块矩形棋盘并使剩下部分也是矩形,再将剩下的部分继续如此分割,这样割了(n-1)次后,连同最后剩下的矩形棋盘共有n块矩形棋盘。(每次切割都只能沿着棋盘格子的边进行) 原棋盘上每一格有一个分值,一块矩形棋盘的总分为其所含各格分值之和。现在需要 阅读全文
posted @ 2021-12-05 20:34 zhangtingxi 阅读(136) 评论(0) 推荐(0)
摘要:题目链接 首先dp得从低位向高位枚举,因为高位无论如果使用 \(2^{a_i}\) 都对低位二进制1的个数无影响,满足dp的无后效性。 设 \(dp(k, i, x, y)\) 为 \(S\) 从低的高二进制的前 \(k\) 位中,用了数列 \(a\) 的前 \(i\) 项,且此时 \(S\) 中共 阅读全文
posted @ 2021-11-22 21:21 zhangtingxi 阅读(468) 评论(0) 推荐(0)
摘要:题目链接 首先先预处理,把连续方块合一,变成 P2135 方块消除。 没错这题是双倍经验 设 \(dp(i, j, k)\) 为区间 \([i, j]\) 内后面与 \(a[j]\) 相同颜色的方块有 \(k\) 个,然后分两种情况考虑。 直接把 \([i, j-1]\) 裁掉,于是 \(dp(i, 阅读全文
posted @ 2021-11-14 21:19 zhangtingxi 阅读(166) 评论(0) 推荐(0)