2022年10月19日
摘要: 普通的dp写法 f[i] = max{ f[j] +1 } j<i &&a[i]<=a[j] 复杂度 O(n^2) 单调队列写法 O(nlogn) int n,a[N],f[N],st[N],len; int cmp(int x,int y){ return x>y; } void solve(){ 阅读全文
posted @ 2022-10-19 19:34 towboat 阅读(44) 评论(0) 推荐(0)
摘要: 四方定理是众所周知的:任意一个正整数n,可以分解为不超过四个整数的平方和 给定的正整数n,统计它能分解的方案总数。注意:25=4^2+3^2 与 3^2+4^2 相同 背包,把每个平方数作为一个物品 直接用背包会重复累加,此时要利用这个定理,f[4][j] #include <iostream> # 阅读全文
posted @ 2022-10-19 16:30 towboat 阅读(21) 评论(0) 推荐(0)
摘要: 一些不同类型的物品,每种物品有可取个数的上限( a[i] ) 从中挑m个,求方案个数 这是背包问题? 考虑前 i 种物品,f[i][j] 表示方案个数, j 表示第i个物品取多少 f[i][j]+= f[i-1][j-k] f[0][0]=1 #include <iostream> using na 阅读全文
posted @ 2022-10-19 15:06 towboat 阅读(14) 评论(0) 推荐(0)
摘要: n个同学站成一个圆圈,其中的一个同学手里拿着一个球,当老师吹哨子时开始传球,每个同学可以把球传给自己左右的两个同学中的一个(左右任意),当老师再次吹哨子时,传球停止,此时,拿着球没有传出去的那个同学就是败者,要给大家表演一个节目。 有多少种不同的传球方法可以使得从小蛮手里开始传的球,传了m次以后,又 阅读全文
posted @ 2022-10-19 13:32 towboat 阅读(9) 评论(0) 推荐(0)
摘要: 1~M 挑数字(可重复), 能组成多少长度为n的合法序列? ( n,k =2000 合法序列: a[i] %a[i-1]==0 f[i][j] += f[i-1][k] , j%k==0 #include <iostream> using namespace std; const int N=200 阅读全文
posted @ 2022-10-19 12:26 towboat 阅读(21) 评论(0) 推荐(0)
  2022年10月18日
摘要: 数字串分割为m个部分,求乘积最大? 例如有一个数字串:312, 当 N=3,K=1 时会有以下两种分法: 3 * 12 31*2 这时,符合题目要求的结果是: 31 *2 转移方程 在注释里,不解释 以下代码只有80分,AC需要换成高精度(笔者大概是没学过的 #include <iostream> 阅读全文
posted @ 2022-10-18 21:18 towboat 阅读(17) 评论(0) 推荐(0)
摘要: 有一个箱子容量为 VV,同时有 nn 个物品,每个物品有一个体积。 现在从 nn 个物品中,任取若干个装入箱内(也可以不取),使箱子的剩余空间最小。输出这个最小值。 #include <iostream> #include <vector> #include <cstring> using name 阅读全文
posted @ 2022-10-18 20:33 towboat 阅读(13) 评论(0) 推荐(0)
摘要: 这里的图染色问题 : 用最少的颜色给一个无向图的点染色,且相邻节点颜色不同 f[s] = min{ f[s-s2]+1 } ,s2为s的子集 值得注意集合S 的子集如何枚举? for(j=S; j ;j=(j-1)&S) #include <iostream> #include <vector> u 阅读全文
posted @ 2022-10-18 18:49 towboat 阅读(22) 评论(0) 推荐(0)
摘要: 树上的点可以涂成黑色或白色,求最少的黑色点,使得任意白点只和一个黑点相连 白点只和一个黑点相连,所以对于节点x, 不仅考虑 x ,son[x] 的情况,还有 x,father[x] f[x][3] 黑点个数 0: x 为 黑点 1:x为白点,且father[x] 为黑点 2:x 白点,father[ 阅读全文
posted @ 2022-10-18 16:36 towboat 阅读(18) 评论(0) 推荐(0)
摘要: 1.树的最大独立集 任选一个点作为根,有了以下得状态 f[i][0/1] f[i][0] += max(f[y][0], f[y][1] f[i][1] += f[i][0] #include <iostream> #include <vector> using namespace std; con 阅读全文
posted @ 2022-10-18 15:43 towboat 阅读(32) 评论(0) 推荐(0)