DP
XSamsara
AFO
展开
-
BZOJ 1003: [ZJOI2006]物流运输【DP+最短路】
1003: [ZJOI2006]物流运输时间限制: 10 Sec 内存限制: 162 MB【题目描述】 物流公司要把一批货物从码头A运到码头B。由于货物量比较大,需要n天才能运完。货物运输过程中一般要转 停好几个码头。物流公司通常会设计一条固定的运输路线,以便对整个运输过程实施严格的管理和跟踪。由于各种 因素的存在,有的时候某个码头会无法装卸货物。这时候就必须修改...原创 2017-12-17 20:49:17 · 235 阅读 · 0 评论 -
LibreOJ10077. 「一本通 3.2 练习 3」最短路计数【最短路+DP】
10077. 「一本通 3.2 练习 3」最短路计数【题目描述】传送门【题解】这题我们知道如何判断这条边是不是最短路上的边,那么就可以DP求解了。但是要注意顺序,我们可以预处理出最短路路径(x,y),然后BFS走DP就可以了。代码如下#include<cstdio>#include<cctype>#include<cstring>#includ...原创 2018-09-18 18:34:31 · 246 阅读 · 0 评论 -
BZOJ 1181: [CROATIAN2009]IZBROI选举【DP+二分】
1181: [CROATIAN2009]IZBROI选举【题目描述】传送门【题解】第一问暴力就可以了。第二问,二分最小值,然后DP求解。f[i][j]f[i][j]f[i][j]表示前iii个用了jjj个席位的最少票数,对于第iii个,我们要算出最少需要的票数,如果相等,那么判断一下是否满足第二个条件。最后判断f[i][j]&lt;=Vf[i][j]&lt;=Vf[i...原创 2018-10-22 20:45:12 · 138 阅读 · 0 评论 -
BZOJ4589: Hard Nim【FWT+DP】
4589: Hard Nim【题目描述】传送门【题解】长度为n的不大于m的素数序列亦或和为0的方案数。考虑DP:F[i][xy]=F[i−1][x]∗F[1][y]F[i][x^y]=F[i-1][x]*F[1][y]F[i][xy]=F[i−1][x]∗F[1][y]显然F[1][i]F[1][i]F[1][i]只有iii为素数是F[1][i]=1F[1][i]=1F[1][i]=1...原创 2019-02-27 20:15:26 · 115 阅读 · 0 评论 -
BZOJ3992: [SDOI2015]序列统计【NTT+原根+DP】
3992: [SDOI2015]序列统计【题目描述】传送门【题解】我们可以写出DP式,F[i][j∗a[k]]+=F[i−1][j]F[i][j*a[k]]+=F[i-1][j]F[i][j∗a[k]]+=F[i−1][j]初始状态F[0][0]=1F[0][0]=1F[0][0]=1对于上式我们很难处理,如果我们可以将相乘改成相加,就可以套NTT了。我们设ggg为mod m意义下的...原创 2019-03-15 15:44:51 · 185 阅读 · 0 评论 -
BZOJ4574: [Zjoi2016]线段树【DP】
4574: [Zjoi2016]线段树这个DP有点玄学,F[w][i][L][R]F[w][i][L][R]F[w][i][L][R]表示第iii轮min(a[i],i∈[L,R])≤w<min(a[L−1],a[R+1])min(a[i],i\in[L,R])\le w <min(a[L-1],a[R+1])min(a[i],i∈[L,R])≤w<min(a[...原创 2019-03-21 17:53:25 · 209 阅读 · 0 评论 -
BZOJ1296: [SCOI2009]粉刷匠【DP】
1296: [SCOI2009]粉刷匠这道SB题因为我题目看错,变成了一道毒瘤题,然后到现在才做。对于每一行DP,然后对于所有列DP就可以了。#include<cstdio>#include<algorithm>using namespace std;int n,m,T,g[55][2505],f[55][55][2505],Sum[2][55][55];ch...原创 2019-03-23 11:30:54 · 127 阅读 · 0 评论 -
BZOJ4498: 魔法的碰撞【DP】
4498: 魔法的碰撞我们先考虑全部紧凑的情况,也就是没有多余的空格的情况(将DiD_iDi–,先不考虑魔法师占的空间)。这里用了一个很巧妙的方法,多加一维,表示预留的空位。加入A会有三种情况(E表示空位):A,AE或EA,EAE。对于第一种,表示A两边都有魔法师。对于第二种,表示A的一边有,一边没有。对于第三种,表示A的两边都是空的。如果我们按照从大到小的顺序来,就会发现只需要考...原创 2019-04-19 21:01:24 · 156 阅读 · 0 评论 -
BZOJ4553: [Tjoi2016&Heoi2016]序列【CDQ+DP】
4553: [Tjoi2016&Heoi2016]序列我们可以得出递推式dp[i]=dp[j]+1,j<i,a[j]<=L[i],R[j]<=a[i]dp[i]=dp[j]+1,j<i,a[j]<=L[i],R[j]<=a[i]dp[i]=dp[j]+1,j<i,a[j]<=L[i],R[j]...原创 2019-07-27 11:27:16 · 103 阅读 · 0 评论 -
BZOJ4316: 小C的独立集【Tarjan+DP+仙人掌】
4316: 小C的独立集如果这是一棵树,那么很好做,设F[i][0/1]F[i][0/1]F[i][0/1]就可以了。我们考虑每一个环,环的最末端会对最前端有影响。最末端是0,无所谓,最末端为1,那么最顶端只能是0。那我们先处理环外的点,然后考虑一个环,强制最末端为0/1。为1就强制为−∞- \infty−∞ ,分别DP就可以了。#include<cstdio>#incl...原创 2019-08-15 18:09:32 · 208 阅读 · 0 评论 -
BZOJ1023: [SHOI2008]cactus仙人掌图【仙人掌+Tarjan+DP】
1023: [SHOI2008]cactus仙人掌图先考虑树上,那么就是一个DP就可以了考虑环上,我们如果两个点之间距离大于环长一半,那么我们就不可以走这条路径,所以可以先剖环成链,然后单调队列就可以了。#include<vector>#include<cstdio>#include<algorithm>using namespace std;co...原创 2019-08-16 08:19:00 · 144 阅读 · 0 评论 -
BZOJ 1642: [Usaco2007 Nov]Milking Time 挤奶时间【DP】
1642: [Usaco2007 Nov]Milking Time 挤奶时间【题目描述】 传送门【解题报告】 我们可以发现时间最大是10610610^6,那么完全可以写一个以时间为下标的DP。代码如下#include<cstdio>#include<algorithm>using namespace std;int Len,n,R,f[20...原创 2018-06-02 11:58:42 · 149 阅读 · 0 评论 -
BZOJ 1617: [Usaco2008 Mar]River Crossing渡河问题【DP】
1617: [Usaco2008 Mar]River Crossing渡河问题Time Limit: 5 Sec Memory Limit: 64 MBDescription Farmer John以及他的N(1 &lt;= N &lt;= 2,500)头奶牛打算过一条河,但他们所有的渡河工具,仅仅是一个木筏。 由于奶牛不会划船,在整个渡河过程中,FJ必须始终在木筏上。在这个基础...原创 2018-05-15 17:48:15 · 117 阅读 · 0 评论 -
BZOJ 1616: [Usaco2008 Mar]Cow Travelling游荡的奶牛【DP】
1616: [Usaco2008 Mar]Cow Travelling游荡的奶牛Time Limit: 5 Sec Memory Limit: 64 MBDescription 奶牛们在被划分成N行M列(2 <= N <= 100; 2 <= M <= 100)的草地上游走,试图找到整块草地中最美味的牧草。Farmer John在某个时刻看见贝茜在位置 (...原创 2018-05-15 17:04:36 · 154 阅读 · 0 评论 -
BZOJ 2431: [HAOI2009]逆序对数列【DP】
2431: [HAOI2009]逆序对数列Time Limit: 5 Sec Memory Limit: 128 MBDescription 对于一个数列aiai{ai},如果有i<ji<jiai>ajai>ajai>aj,那么我们称aiaiai与ajajaj为一对逆序对数。若对于任意一个由1 n1 n1~n自然数组成的数列,可以很容易...原创 2018-04-16 16:31:06 · 171 阅读 · 0 评论 -
BZOJ 2748: [HAOI2012]音量调节【DP】
2748: [HAOI2012]音量调节Time Limit: 3 Sec Memory Limit: 128 MBDescription 一个吉他手准备参加一场演出。他不喜欢在演出时始终使用同一个音量,所以他决定每一首歌之前他都要改变一次音量。在演出开始之前,他已经做好了一个列表,里面写着在每首歌开始之前他想要改变的音量是多少。每一次改变音量,他可以选择调高也可以调低。 ...原创 2018-03-28 17:38:34 · 181 阅读 · 0 评论 -
BZOJ 1207: [HNOI2004]打鼹鼠【DP】
1207: [HNOI2004]打鼹鼠Time Limit: 10 Sec Memory Limit: 162 MBDescription 鼹鼠是一种很喜欢挖洞的动物,但每过一定的时间,它还是喜欢把头探出到地面上来透透气的。根据这个特点阿Q编写了一个打鼹鼠的游戏:在一个n*n的网格中,在某些时刻鼹鼠会在某一个网格探出头来透透气。你可以控制一个机器人来打鼹鼠,如果i时刻鼹鼠在某个网...原创 2018-03-21 20:25:29 · 152 阅读 · 0 评论 -
BZOJ 1084: [SCOI2005]最大子矩阵【DP】
1084: [SCOI2005]最大子矩阵Time Limit: 10 Sec Memory Limit: 162 MBDescription 这里有一个n*m的矩阵,请你选出其中k个子矩阵,使得这个k个子矩阵分值之和最大。注意:选出的k个子矩阵 不能相互重叠。Input 第一行为n,m,k(1≤n≤100,1≤m≤2,1≤k≤10),接下来n行描述矩阵每行中的每个元素的分原创 2018-01-28 16:53:41 · 152 阅读 · 0 评论 -
BZOJ 4300: 绝世好题【DP+二进制】
4300: 绝世好题Time Limit: 1 Sec Memory Limit: 128 MBDescription 给定一个长度为n的数列ai,求ai的子序列bi的最长长度,满足bi&bi-1!=0(2<=i<=len)。Input 输入文件共2行。 第一行包括一个整数n。 第二行包括n个整数,第i个整数表示ai。Outpu...原创 2018-05-02 18:35:46 · 174 阅读 · 0 评论 -
BZOJ 1222: [HNOI2001]产品加工【DP】
1222: [HNOI2001]产品加工Time Limit: 15 Sec Memory Limit: 162 MBDescription 某加工厂有A、B两台机器,来加工的产品可以由其中任何一台机器完成,或者两台机器共同完成。由于受到机器性能和产品特性的限制,不同的机器加工同一产品所需的时间会不同,若同时由两台机器共同进行加工,所完成任务又会不同。某一天,加工厂接到n个产品加...原创 2018-05-12 23:25:54 · 117 阅读 · 0 评论 -
BZOJ 1270: [BeijingWc2008]雷涛的小猫【DP】
1270: [BeijingWc2008]雷涛的小猫Time Limit: 50 Sec Memory Limit: 128 MBDescription 雷涛的小猫雷涛同学非常的有爱心,在他的宿舍里,养着一只因为受伤被救助的小猫(当然,这样的行为是违反学 生宿舍管理条例的)。 在他的照顾下,小猫很快恢复了健康,并且愈发的活泼可爱了。可是有一天,雷涛下课回 到寝室,却...原创 2018-05-13 15:35:05 · 155 阅读 · 0 评论 -
BZOJ 1600 [Usaco2008 Oct]建造栅栏【DP】
1600 [Usaco2008 Oct]建造栅栏Time Limit 5 Sec Memory Limit 64 MBDescription 勤奋的Farmer John想要建造一个四面的栅栏来关住牛们。他有一块长为n(4=n=2500)的木板,他想把这块本板 切成4块。这四块小木板可以是任何一个长度只要Farmer John能够把它们围成一个合理的四边形。他能够切出多少 ...原创 2018-05-14 16:03:52 · 156 阅读 · 0 评论 -
BZOJ 1612: [Usaco2008 Jan]Cow Contest奶牛的比赛【Floyd】
1612: [Usaco2008 Jan]Cow Contest奶牛的比赛Time Limit: 5 Sec Memory Limit: 64 MBDescription FJ的N(1 <= N <= 100)头奶牛们最近参加了场程序设计竞赛:)。在赛场上,奶牛们按1..N依次编号。每头奶牛的编程能力不尽相同,并且没有哪两头奶牛的水平不相上下,也就是说,奶牛们的编程能...原创 2018-05-15 10:45:11 · 133 阅读 · 0 评论 -
BZOJ 1613: [Usaco2008 Jan]Running贝茜的晨练计划【DP】
1613: [Usaco2008 Jan]Running贝茜的晨练计划Time Limit: 5 Sec Memory Limit: 64 MBDescription 奶牛们打算通过锻炼来培养自己的运动细胞,作为其中的一员,贝茜选择的运动方式是每天进行N(1<=N<=10,000)分钟的晨跑。在每分钟的开始,贝茜会选择下一分钟是用来跑步还是休息。贝茜的体力限制了她跑步...原创 2018-05-15 12:22:46 · 183 阅读 · 0 评论 -
【Codeforces】1221D. Make The Fence Great Again【DP】
我们会发现一个规律,每个栅栏的高度最多增加2,所以直接上DP。#include<cstdio>#include<cstring>#include<algorithm>const int MAXN=3e5+5;int T,n,a[MAXN],b[MAXN];long long F[MAXN][3];#include<cctype>int ...原创 2019-09-26 19:51:55 · 289 阅读 · 0 评论