![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
dp
lengxuenong
这个作者很懒,什么都没留下…
展开
-
Millionaire-白书-概率dp
学了,记录下你被邀请到某个电视节目中去玩下面这个游戏。一开始你有x元钱,接着进行m轮赌博,每一轮,可以将所持的任意一部分作为赌注,赌注不光可以是整数,也可以是小数,一分钱不押或全押都没有关系,每一轮都有p的概率可以赢,赢了赌注就好翻倍,输了赌注就没了,如果你最后有100万以上的钱的话,就可以把钱带回家。请计算当你采取最优策略时,获得100万以上的钱并带回家的概率。 0<=p<=1.0,1<=1<=1000000,1<=m<=15 样例输入: M,p, x 输入 :1原创 2021-03-16 11:23:04 · 363 阅读 · 0 评论 -
牛客-小l的数列-dp+素数
https://ac.now链接:https://ac.nowcoder.com/acm/problem/218035来源:牛客网2.对于任意的i(1≤i<m)i (1 \leq i <m)i(1≤i<m),满足 gcd(bi,bi+1)>1gcd(b_i,b_{i+1})>1gcd(bi,bi+1)>1。其中,gcd(x,y)gcd(x,y)gcd(x,y)为xxx和yyy的最大公因数,即最大的ddd,满足:d∣xd|xd∣x且d∣yd|yd∣y。...原创 2021-03-08 09:04:40 · 181 阅读 · 0 评论 -
10180. 「一本通 5.5 练习 1」烽火传递-单调队列
一定要注意代码规范,函数没有返回值就VOID写了个单调队列,本机各种修改,都是对的,交上去就TLE,RE.刷了两页提交记录后,重于发现原来函数想写返回值,就用了int,后来不打算返回值了,也没有修改。dp[i]=ai+min(dp[j]) i-j<k;评测总是不过,所以用两种方法写的#include<iostream>#include<cstdio>...原创 2020-03-19 10:05:07 · 218 阅读 · 0 评论 -
P6007 [USACO20JAN]Springboards G:树状数组优化DP
题目来源:P6007 [USACO20JAN]Springboards G题目大意:在二维矩阵上有q个跳板,求从(0,0)到(N,N)最少走多少步,规定了只能从坐下跳到右上。题目都规定了跳的方式了,考虑dp,要找出坐下的点中省的步数最多的点。设dp[i]为走到i点的步数,则dp[i]=min(xi+yi+dp[j]-xj-yj)=min(dp[j]-xi-yj)+xi+yi;转化为求dp[j...原创 2020-03-01 11:21:16 · 306 阅读 · 0 评论 -
P6005 [USACO20JAN]Time is Mooney G:DP
题目来源:P6005 [USACO20JAN]Time is Mooney G要求经过的城市收益最大,但是要减去CII,,M<2000,收益小于1000,所以天数最多不会超过1000天。时间复杂度o(N*M)题目为有向图,相关因素为天数和路径,无后效性,考虑dp,设dp[i][j]为在第i天到达城市j的收益.求最大值,其中dp[0][1]=0.参考代码“#include<bit...原创 2020-03-01 10:57:52 · 307 阅读 · 0 评论 -
P6103 [EER2]直接自然溢出啥事没有:我语文不好,dp也不好
链接: P6103 [EER2]直接自然溢出啥事没有出题人的语文很好吗?整篇阅读理解给我们做!整个都搞晕了,在题解的帮助下,画个图理解下。连接+2+0+2+4+2+0+2+2+1语句片段语句块函数值设:dp[i][0]为语句数;dp[i][1]为程序片段数;dp[i][1]=∑j=0i−1dp[j][1]∗dp[i−j][0]dp[i][1]= \sum_{j=0}^{i-1}dp[j]...原创 2020-02-19 12:38:59 · 452 阅读 · 0 评论 -
P2905 [USACO08OPEN]农场危机Crisis on the Farm-dp
dp,阶段就是步数。本蒟蒻想不出来,只好用题解大法:四个方向的走路,dp的阶段是步数,每个点可以由四个方向转移而来。这是逆序做的。他这样做的好吃是最后回到原点,然后逆序找字典序最小即可。独立思考下,如果从原点出发,那么向四个方向走,需要找出最大值和字典序最小的路径。因此,对每个点,值变化的时候更新值,值不变但路径更小的时候也更新。#include<cstdio>#...原创 2019-10-13 17:27:38 · 209 阅读 · 0 评论 -
动态规划--from zpz
版权声明:copy from zpz,我可能要修改 https://blog.csdn.net/qq_40828060/article/details/83064425 文章目录前言记忆化搜索动态规划的基本解题思路背包问题01背包(待处理)P1489 猫狗大战01背...转载 2018-11-29 15:57:07 · 907 阅读 · 0 评论 -
分组背包
1.每组物品只能选一件,求最大价值。例题:洛谷P1757 通天之分组背包int w[10001],t,c[10001],v,f[10001],a[10001][1001],m,n,p;int main() { scanf("%d%d",&m,&n); for(int i=1; i<=n; i++) { scanf("%d%d%d"...原创 2018-11-02 20:36:02 · 243 阅读 · 0 评论 -
luoguP4933 大师
dyn让我做这个题目,感觉是要从公差入手,只想到了60分的算法dp[i][j]代表以结尾公差为j的等差数列的个数,枚举公差,公差固定了,对应的数就找到了,这个题目n和v都不大,因此可以用桶来直接找。看了题解,才明白优化后的算法,每次枚举一个公差,dp记录,因此只保留一维循环使用即可。比如,dp[i]记录以i结点结尾的等差数列的个数。g[a[i]]记录以当前数值产生的等差数列的个数。 ...原创 2018-10-25 16:46:40 · 180 阅读 · 0 评论 -
numberqb200707-2-3
https://www.luogu.org/problemnew/show/T14200题目描述LYK定义了一个新的计算。具体地,一开始它有两个数字a和b。每一步,它可以将b增加1,或者将a乘上b。也就是说(a,b)经过一次操作后可以变成(a,b+1)或者(a*b,b)。再经过一次操作可以变成(a,b+2)或者(a*(b+1),b+1)或者(a*b,b+1)或者(a*b*b,b)。接下来都类...原创 2018-10-25 16:02:22 · 169 阅读 · 0 评论 -
洛谷1982-小朋友的数字-noip2013
/*主要考察语文能力,关键把题读懂。 (分数+特征值)的最大值!读完题就能发现这是个(几乎是裸的)最大子段和问题。对于最大子段和问题,我们有O(N)的算法。 具体的做法是这样的:当前要求第I位及之前的最大子段和,如果第(I-1)位及之前的最大子段和大于0,则显然这一位取了也未尝不可(不会减少),也就是当前这一位和前面一段连接起来。否则的话,就新开一段——把前面的最大子段和改成0以后继续往下...原创 2018-09-06 14:48:29 · 391 阅读 · 0 评论 -
Barn Painting— [USACO17DEC]GOLD
题目大意:n个节点的树,用三种颜色染色,相邻的两点不能染相同的颜色,有些点已经染好色了,求所有可能的方案总数,至少有一种可行方案。题目分析:在树上,数学方法不能直接用。从一个节点开始,状态可以进行推导,dp。在树上进行记忆化搜索。#include#include#include using namespace std;const int maxn=100009,P=1e9+7;struc原创 2018-01-17 21:16:40 · 382 阅读 · 0 评论 -
[USACO15JAN]电影移动Moovie Mooving
这个题目花了很多时间。N=20, ,状态2^20,然后c=1000,每次二分查找log(1000),然后时间复杂度到了2*10^8,用lowbound不开优氧气优化就超时啦。// luogu-judger-enable-o2#include#include #include#includeusing namespace std;const int maxn=(1<<21);i原创 2018-01-24 16:24:50 · 260 阅读 · 0 评论 -
洛谷P1850 换教室noip提高day1题
概率期望dp期望:(百度百科)在概率论和统计学中,数学期望(mean)(或均值,亦简称期望)是试验中每次可能结果的概率乘以其结果的总和。是最基本的数学特征之一。它反映随机变量平均取值的大小。需要注意的是,期望值并不一定等同于常识中的“期望”——“期望值”也许与每一个结果都不相等。(换句话说,期望值是该变量输出值的平均数。期望值并不一定包含于变量的输出值集合里。)例如原创 2017-06-13 16:28:56 · 441 阅读 · 0 评论 -
noip2010引水入城-搜索+贪心
题目描述在一个遥远的国度,一侧是风景秀美的湖泊,另一侧则是漫无边际的沙漠。该国的行政区划十分特殊,刚好构成一个N 行M 列的矩形,如上图所示,其中每个格子都代表一座城市,每座城市都有一个海拔高度。为了使居民们都尽可能饮用到清澈的湖水,现在要在某些城市建造水利设施。水利设施有两种,分别为蓄水厂和输水站。蓄水厂的功能是利用水泵将湖泊中的水抽取到所在城市的蓄水池中。因此,只有与湖泊毗邻的原创 2017-09-06 09:44:44 · 276 阅读 · 0 评论 -
动态规划题目
转载自Contents✎ [UVA 1025] A Spy in the Metro✎ [UVA 437] The Tower of Babylon✎ [UVA 1347 | POJ 2677] Tour✎ [UVA 12563] Jin Ge Jin Qu✎ [UVA 11400] Lighting System Design✎ [UVA 1625] Color Le转载 2017-09-20 15:12:22 · 2293 阅读 · 0 评论 -
coci2014 contest#1 T5-zabavz—— dp
coci2014 contest#1 T5https://www.luogu.org/problem/show?pid=T10946题目描述题目大意:学校新建了M栋宿舍,有N个学生入住,每天新入住1人。当一个宿舍有新人入住时候就开个吵人的paty,吵闹度为宿舍的所有学生人数。宿管们都烦吵闹,他们有权让一个宿舍的所有学生全搬走,但只能用不超过k次。求最小的的吵闹度。输入格原创 2017-09-20 17:07:40 · 263 阅读 · 0 评论 -
codevs2596售货员难题——状态压缩dp
我们知道,用DP解决一个问题的时候很重要的一环就是状态的表示,一般来说,一个数组即可保存状态。但是有这样的一些题目,它们具有DP问题的特性,但是状态中所包含的信息过多,如果要用数组来保存状态的话需要四维以上的数组。于是,我们就需要通过状态压缩来保存状态,而使用状态压缩来保存状态的DP就叫做状态压缩DP。状态压缩DP的特点:状态中的某一维会比较小,一般不会超过15,多了的话状态数会急剧上升而原创 2017-10-11 16:07:46 · 800 阅读 · 0 评论 -
[USACO08NOV]奶牛混合起来--状态压缩
数据范围提示了状态压缩,在当前结点的基础上,看能否扩展出那些结点。与哈密尔顿回路是一样的。回顾:哈密尔顿回路:http://blog.csdn.net/lengxuenong/article/details/78204873#includeusing namespace std;const int maxn=(1<<17);int n,K,num,c[20];long lo原创 2018-01-24 11:09:27 · 268 阅读 · 0 评论 -
洛谷P3092 [USACO13NOV]没有找零——状态压缩
题目大意,按照顺序,买n个东西,可以选择任何时机付钱,不给找零,如何剩下的钱最多。先YY了个贪心的解法,看一起付出去一些硬币能买到所有物品吗。交上去试试,没想到数据很弱,11个点竟然只错了1个点。#include#include#include#include using namespace std;//我知道这是错的,试试能蒙对几个点。 int K,N,cion[20],原创 2018-01-24 11:35:50 · 300 阅读 · 0 评论 -
洛谷P1879 [USACO06NOV]玉米田Corn Fields--状态压缩
状态压缩,子集枚举,所有状态都试一遍#includeusing namespace std;const int N=13;int f[N][1<<14],g[N];int n,m,num;const int P=100000000;int dp(){ f[0][0]=1; for(int i=1;i<=m;i++){ for(int j=0;j<=g原创 2018-01-24 14:42:14 · 312 阅读 · 0 评论 -
洛谷P1896 [SCOI2005]互不侵犯King
和前面的玉米田很接近,加了数量的要求。做的时候翻了两个ruozhi错误,一是估计数据范围很大,但没用longlong.二是没有仔细看k的范围,数组f的第三维开小了。#includeusing namespace std;const int maxn=512;int n,K,num,c[maxn];long long ans=0;void count(){ for(int原创 2018-01-24 14:47:54 · 256 阅读 · 0 评论 -
宝藏noip2017day2t2--状态压缩
完成状态的最优值,数据范围枚举每个起点,从这个点开始求总路径,难点就在记录路径的长度。,如果经过一个转移点,路径长度+1,其他的点没有经过,保持原来的值。#include#include#include#includeusing namespace std;const int maxn=17,inf=0x3f3f3f3f;int map[maxn][maxn],step[max原创 2018-01-24 15:34:00 · 422 阅读 · 0 评论 -
愤怒的小鸟noip2017dayt3
游戏题。我自己在写大式子转移,自己晕头转向。hzw提醒我先预处理所有在同一线上的猪。然后将所有可能出现的打架状态进行枚举转移。先忘了处理除数是0,挂了一个点。#include#include #include#include#includeusing namespace std;const int maxn=(1<<20);const double ex=1e-9;int n,原创 2018-01-24 15:40:30 · 339 阅读 · 0 评论 -
洛谷P3609 [USACO17JAN]Hoof, Paper, Scissor蹄子剪刀--dp
最优化问题,石头剪刀布。dp设dp[i][j][k]代表前i轮,换了j次,当前手势是什么,状态下的最优值。#include#include#include#includeusing namespace std;const int maxn=1e5+9;int n,m,a[maxn], dp[maxn][22][4],ans=0;char c;int vs[3][3]={0,原创 2017-06-04 15:10:59 · 636 阅读 · 0 评论