随笔分类 -  DP,动态规划

摘要:普通多重背包 外层枚举哪个包,中层枚举容量,内存枚举数量 for(i=1; i<=n; ++i) for(j=m; j>=0; --j) for(k=1; k*w[i]<=j && j<=s[i]; ++k) f[j]=max(f[j], f[j-k*w[i]]+k*v[i]); 二进制优化 相当于 阅读全文
posted @ 2022-09-11 19:06 zhangtingxi 阅读(58) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 有一个长度为 n 的数组 a 和一个长度为 n1 的数组 b,初始位置为 pos=1,每一天可以选择得到 apos元钱,或者花费 bpos元钱(钱数不能为负)使得 pospos+1 现在希望买 阅读全文
posted @ 2022-06-11 08:51 zhangtingxi 阅读(37) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 We saw the little game Marmot made for Mole's lunch. Now it's Marmot's dinner time and, as we all know, Marmot eats flowers. At every dinner h 阅读全文
posted @ 2022-04-28 17:38 zhangtingxi 阅读(103) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 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 阅读(47) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 Alex doesn't like boredom. That's why whenever he gets bored, he comes up with games. One long winter evening he came up with a game and decid 阅读全文
posted @ 2022-04-26 17:46 zhangtingxi 阅读(190) 评论(0) 推荐(0) 编辑
摘要:Part A 单调队列 何为单调队列? 单调队列(Monotone queue )即单调递减或单调递增的队列。 例:滑动窗口 T1 题目 对于一个长为 N 的序列,求所有从左到右长为 K 的区间最大值和最小值。 N,K106 思路 以最大值为例,维护一个 阅读全文
posted @ 2022-03-10 18:11 zhangtingxi 阅读(78) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 最近 lxhgww 又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律。 通过一段时间的观察,lxhgww 预测到了未来 T 天内某只股票的走势,第 i 天的股票买入价为每股 APi,第 \( 阅读全文
posted @ 2022-02-17 18:08 zhangtingxi 阅读(135) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 原题来自:POI 2005 Byteotian Bit Bank (BBB) 拥有一套先进的货币系统,这个系统一共有 n 种面值的硬币,面值分别为 b1,b2,,bn 。但是每种硬币有数量限制,现在我们想要凑出面值 k,求最少要用多少个 阅读全文
posted @ 2022-02-17 17:04 zhangtingxi 阅读(349) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 高二数学《绿色通道》总共有 n 道题目要抄,编号 1n,抄第 i 题要花 ai 分钟。小 Y 决定只用不超过 t 分钟抄这个,因此必然有空着的题。每道题要么不写,要么抄完,不能写一半。下标连续的一些空题称为一个空题段,它的长度就 阅读全文
posted @ 2022-02-15 17:28 zhangtingxi 阅读(478) 评论(0) 推荐(0) 编辑
摘要:状压dp的引入 状压DP,是用二进制的性质来描述状态的一种DP。 对于状压dp,我们要先了解一下位运算。 位运算 x&y 与运算,101&110=100 x|y 或运算,100|101=101 x^y 异或运算,101^100=001 x<<1 左移运算 x>>1 右移运算 状压dp 先看一道题: 阅读全文
posted @ 2022-01-20 11:43 zhangtingxi 阅读(52) 评论(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 阅读(358) 评论(0) 推荐(1) 编辑
摘要:题目 在 n×n 的棋盘上放 k 个国王,国王可攻击相邻的 8 个格子,求使它们无法互相攻击的方案总数。 对于全部数据,1n10,0kn2 思路 方法一:爆搜 方法二:状压dp 每行很大,不可能开个十几维数组,怎么办? 把每行压成一个二进制! 设 \(dp( 阅读全文
posted @ 2022-01-18 15:30 zhangtingxi 阅读(82) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 设一个 n 个节点的二叉树 tree 的中序遍历为(1,2,3,,n),其中数字 1,2,3,,n 为节点编号。每个节点都有一个分数(均为正整数),记第 i 个节点的分数为 di,\(\text{tr 阅读全文
posted @ 2022-01-17 15:00 zhangtingxi 阅读(129) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 在大学里每个学生,为了达到一定的学分,必须从很多课程里选择一些课程来学习,在课程里有些课程必须在某些课程之前学习,如高等数学总是在其它课程之前学习。现在有 N 门功课,每门课有个学分,每门课有一门或没有直接先修课(若课程 a 是课程 b 的先修课即只有学完了课程 a,才能学习 阅读全文
posted @ 2022-01-14 15:55 zhangtingxi 阅读(137) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 有一棵苹果树,如果树枝有分叉,一定是分二叉(就是说没有只有一个儿子的结点) 这棵树共有 N 个结点(叶子点或者树枝分叉点),编号为 1N,树根编号一定是 1。 我们用一根树枝两端连接的结点的编号来描述一根树枝的位置。下面是一颗有 4 个树枝 阅读全文
posted @ 2022-01-14 15:34 zhangtingxi 阅读(290) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 原题来自:ZJOI 2010 给定两个正整数 ab,求在 [a,b] 中的所有整数中,每个数码 (digit) 各出现了多少次。 思路 首先在数位dp中,对于当前枚举的数,乘上后面的方案数。 那么后面的数如何多次计算呢? 我们发现这些数具有传递性 阅读全文
posted @ 2022-01-13 14:26 zhangtingxi 阅读(167) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 单身! 依然单身! 吉哥依然单身! DS 级码农吉哥依然单身! 所以,他平生最恨情人节,不管是 214 还是 77,他都讨厌! 吉哥观察了 21477 这两个数,发现: 2+1+4=7 7+7=7×2 77=7×11 阅读全文
posted @ 2022-01-13 14:21 zhangtingxi 阅读(405) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 由于科协里最近真的很流行数字游戏,某人又命名了一种取模数,这种数字必须满足各位数字之和 modN0。现在大家又要玩游戏了,指定一个整数闭区间 [a,b],问这个区间内有多少个取模数。 思路 数位dp。 三个转态:当前第几位?现在这一位是否有上限?当 阅读全文
posted @ 2022-01-12 14:46 zhangtingxi 阅读(196) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 不含前导零且相邻两个数字之差至少为 2 的正整数被称为 windy 数。windy 想知道,在 ab 之间,包括 ab ,总共有多少个 windy 数? 思路 数位dp,用 b 以内的减去 a1 以内的就是答案。 阅读全文
posted @ 2022-01-12 14:12 zhangtingxi 阅读(40) 评论(0) 推荐(0) 编辑
摘要:题目链接 题目 科协里最近很流行数字游戏。某人命名了一种不降数,这种数字必须满足从左到右各位数字成小于等于的关系,如 123446。现在大家决定玩一个游戏,指定一个整数闭区间 [a,b],问这个区间内有多少个不降数。 思路 数位dp,用 b 以内的减去 \(a-1\ 阅读全文
posted @ 2022-01-12 14:10 zhangtingxi 阅读(232) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示