
DP
文章平均质量分 69
ummmmm
这个作者很懒,什么都没留下…
展开
-
[单源最短路+路径还原]城市交通路网 HUSTOJ2813
题目描述下图表示城市之间的交通路网,线段上的数字表示费用,单向通行由A->E。试用动态规划的最优化原理求出A->E的最省费用。如图:求v1到v10的最短路径长度及最短路径。输入第一行为城市的数量N;后面是N*N的表示两个城市间费用组成的矩阵。输出A->E的最省费用。样例输入100 2 5 1 0 0 0 0 0 00 0 0 0 12 14 0 0...原创 2018-04-07 22:13:58 · 940 阅读 · 0 评论 -
[01背包] 烹调方案 洛谷P1417
题目背景由于你的帮助,火星只遭受了最小的损失。但gw懒得重建家园了,就造了一艘飞船飞向遥远的earth星。不过飞船飞到一半,gw发现了一个很严重的问题:肚子饿了~gw还是会做饭的,于是拿出了储藏的食物准备填饱肚子。gw希望能在T时间内做出最美味的食物,但是这些食物美味程度的计算方式比较奇葩,于是绝望的gw只好求助于你了。题目描述一共有n件食材,每件食材有三个属性,ai,bi和ci,如果在t时刻完成...原创 2018-06-01 21:21:10 · 139 阅读 · 0 评论 -
【矩阵快速幂】CF gym 101473 H Buses
#include <bits/stdc++.h>using namespace std;const long long mod = 1e6;struct M{ long long a[2][2];};M multi(const M& x, const M& y) //矩阵乘法{ M z; for(int i = 0; i < 2; i +...原创 2018-05-30 15:07:41 · 335 阅读 · 0 评论 -
【区间DP/字符串】kiminonamaewa 校OJ2475
// O(n^4)#include <bits/stdc++.h>using namespace std; const int mod = 1e9 + 7; char ch[60];int sum[60][60]; int main(){ int T; scanf("%d", &T); while (T--) { ...原创 2018-05-24 17:07:59 · 565 阅读 · 0 评论 -
【区间DP/记忆化搜索】Brackets POJ2955
Brackets POJ - 2955 #include <cstdio>#include <cstring>#include <algorithm>using namespace std;char ch[105];int sum[105][105];int main(){ while(~scanf("%s",ch+1)) { if(s...原创 2018-05-23 20:09:18 · 198 阅读 · 0 评论 -
【DP】数字旋转 校OJ2445
#include <bits/stdc++.h>using namespace std;int n, m;char ch[105][15];int len[105];int a[15], b[15];long long dp[105][1010];int jiaohuan(int t, int k) //ch[t]换k次{ for (int i = 0; i &l...原创 2018-05-23 16:09:41 · 189 阅读 · 0 评论 -
【DP】Occult的卡片升级计划 校OJ2389
题目描述Occult喜欢玩一款手游,手游中有很多好看的卡片。他想要升级这些卡。现在他有m块经验石,目标是强化一张卡片,卡片最开始的时候是0级,卡片会升级,而升级所需的经验会越来越多。假设卡片满级是n级,给出a[1],a[2]....a[n],a[i]表示从i-1级升到i级所需的经验石数量。保证a[1]+a[2]+...+a[n]=m,且a[1]<=a[2]<=..<=a[n]。然...原创 2018-05-22 16:31:20 · 148 阅读 · 0 评论 -
【DP】 会长晨刷记 校OJ2343
题目描述晨刷是个好活动!ACM会长路明非特别热衷于晨刷,尤其是路程变长时间变短了之后。可是最近天天下雨,晨刷的路上有各种水坑,踩到水坑就会弄湿美美的鞋子和裤子,因此会长很烦恼:还让不让人愉快的晨刷了?!于是会长想知道自己该如何巧妙避开各种水坑。假设从起点到终点有n米,其中有m个水坑是需要避开的,会长每次可以走1米2米3米或者4米。请问在这种情况下,会长有多少种方式避开水坑到达终点。输入输入包含多组...原创 2018-05-16 12:26:27 · 191 阅读 · 0 评论 -
【map/连续递增子序列】 Consecutive Subsequence CF977F
You are given an integer array of length nn.You have to choose some subsequence of this array of maximum length such that this subsequence forms a increasing sequence of consecutive integers. In other...原创 2018-05-12 16:30:10 · 281 阅读 · 0 评论 -
[DP] 低价购买 洛谷P1108
题目描述“低价购买”这条建议是在奶牛股票市场取得成功的一半规则。要想被认为是伟大的投资者,你必须遵循以下的问题建议:“低价购买;再低价购买”。每次你购买一支股票,你必须用低于你上次购买它的价格购买它。买的次数越多越好!你的目标是在遵循以上建议的前提下,求你最多能购买股票的次数。你将被给出一段时间内一支股票每天的出售价( 2^{16}216 范围内的正整数),你可以选择在哪些天购买这支股票。每次购买...原创 2018-06-25 18:50:37 · 316 阅读 · 0 评论 -
【状压DP】 Traveling by Stagecoach ZOJ2792
Traveling by StagecoachTime Limit: 2 Seconds Memory Limit: 32768 KB Special JudgeOnce upon a time, there was a traveler.He plans to travel using stagecoaches (horse wagons). His starti...原创 2018-07-24 15:08:19 · 267 阅读 · 0 评论 -
[状压DP] 每个人排在不同位置有不同贡献 求队伍贡献值一定的方案数 ZOJ3777
B - Problem ArrangementZOJ - 3777The 11th Zhejiang Provincial Collegiate Programming Contest is coming! As a problem setter, Edward is going to arrange the order of the problems. As we know, the...原创 2019-04-11 20:43:27 · 164 阅读 · 0 评论 -
【DP】Rabbit的工作(1) 牛客练习赛36B
链接:https://ac.nowcoder.com/acm/contest/328/B来源:牛客网 Rabbit的工作(1)时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 32768K,其他语言65536K64bit IO Format: %lld题目描述Rabbit大学毕业后找到了一份实习工作,如果实习通过她就转正了。实习期共有N天,其中有几天公司集体放...原创 2019-01-05 23:04:09 · 282 阅读 · 0 评论 -
[DP] A Question of Ingestion gym101673G
#include <bits/stdc++.h>using namespace std;const int mn = 105;int l[mn], p[mn];int dp[mn][mn];int main(){ int n, m; scanf("%d %d", &n, &m); for (int i = 1; i <= n;...原创 2018-11-01 21:33:48 · 227 阅读 · 0 评论 -
[DP] 取若干数异或>=m的方案数 HDU5119
Happy Matt FriendsTime Limit: 6000/6000 MS (Java/Others) Memory Limit: 510000/510000 K (Java/Others)Total Submission(s): 5399 Accepted Submission(s): 2065 Problem DescriptionMatt has N f...原创 2018-10-13 17:41:04 · 326 阅读 · 0 评论 -
[AC自动机+DP] 求有上限不带特定子串的数字数量 BZOJ3530
3530: [Sdoi2014]数数Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 1411 Solved: 723[Submit][Status][Discuss]Description我们称一个正整数N是幸运数,当且仅当它的十进制表示中不包含数字串集合S中任意一个元素作为其子串。例如当S=(22,333,0233)时,233是幸...原创 2018-10-11 21:04:07 · 219 阅读 · 0 评论 -
[AC自动机+DP] 限定长度不包含给定子串的可能字符串数量 BZOJ1030
1030: [JSOI2007]文本生成器Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 6242 Solved: 2656[Submit][Status][Discuss]Description JSOI交给队员ZYX一个任务,编制一个称之为“文本生成器”的电脑软件:该软件的使用者是一些低幼人群,他们现在使用的是GW文本生成器v...原创 2018-10-11 21:01:19 · 431 阅读 · 0 评论 -
【DP】树的度 HDU5534
Partial TreeTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 2155 Accepted Submission(s): 1074 Problem DescriptionIn mathematics, an...原创 2018-09-18 02:43:56 · 230 阅读 · 0 评论 -
【KMP nx数组 + DP】K - Count the string HDU - 3336
Count the stringTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 14288 Accepted Submission(s): 6544 Problem DescriptionIt is well know...原创 2018-08-31 15:33:08 · 232 阅读 · 0 评论 -
【01背包】小刷上学记 校OJ2236
题目描述有n个小朋友一起结伴同行去上学,每个小朋友的口袋里都有一些糖果,孩子的世界总是单纯而又可爱,现在其中的小刷提出了一个问题,如果把某些人(大于等于1个人)的糖果组合起来,能否组合出素数个糖果呢?如果能够组合出素数个糖果,能组成的最大的素数又是多少呢?如果不能,又最接近于哪个素数呢?如果一样接近,最大的又是哪个素数呢?看,小刷的世界就是这么单洁而又可爱!输入第一行输入一个n,紧接着下一行输入n...原创 2018-05-17 14:34:53 · 184 阅读 · 0 评论 -
【DP/lower_bound】 拦截导弹加强版 HUSTOJ3214
题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。输入第一行为一个整数N,表示飞来的导弹个数,N<=100000第二行为N个整数,依次表示导弹飞来的高度,高...原创 2018-05-04 16:08:59 · 307 阅读 · 0 评论 -
[DP] 两岸城市间不交叉建桥 HUSTOJ2815
题目描述Palmia国有一条横贯东西的大河,河有笔直的南北两岸,岸上各有位置各不相同的N个城市。北岸的每个城市有且仅有一个友好城市在南岸,而且不同城市的友好城市不相同。每对友好城市都向政府申请在河上开辟一条直线航道连接两个城市,但是由于河上雾太大,政府决定避免任意两条航道交叉,以避免事故。编程帮助政府做出一些批准和拒绝申请的决定,使得在保证任意两条航线不相交的情况下,被批准的申请尽量多。输入第1行...原创 2018-04-07 06:01:05 · 244 阅读 · 0 评论 -
[DFS+DP] Machine 浙大月赛H 14.08
In a typical assembly line, machines are connected one by one. The first machine's output product will be the second machine's raw material. To simplify the problem, we put all machines into a two-dim...原创 2018-04-18 19:14:39 · 160 阅读 · 0 评论 -
[DP] 混合背包 HUSTOJ2822
题目描述一个旅行者有一个最多能装V公斤的背包,现在有n件物品,它们的重量分别是W1,W2,...,WnW1,W2,...,Wn,它们的价值分别为C1,C2,...,CnC1,C2,...,Cn。有的物品只可以取一次(01背包),有的物品可以取无限次(完全背包),有的物品可以取的次数有一个上限(多重背包)。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。输入第一行:二个整...原创 2018-04-12 23:48:17 · 241 阅读 · 0 评论 -
[DP] 多重背包 庆功会 HUSTOJ2821
题目描述为了庆贺班级在校运动会上取得全校第一名成绩,班主任决定开一场庆功会,为此拨款购买奖品犒劳运动员。期望拨款金额能购买最大价值的奖品,可以补充他们的精力和体力。输入第一行二个数n(n≤500),m(m≤6000),其中n代表希望购买的奖品的种数,m表示拨款金额。接下来n行,每行3个数,v、w、s,分别表示第I种奖品的价格、价值(价格与价值是不同的概念)和能购买的最大数量(买0件到s件均可),其...原创 2018-04-12 20:15:50 · 700 阅读 · 0 评论 -
[DP] 01背包问题 HUSTOJ2819
题目描述一个旅行者有一个最多能装M公斤的背包,现在有n件物品,它们的重量分别是W1,W2,...,WnW1,W2,...,Wn,它们的价值分别为C1,C2,...,CnC1,C2,...,Cn,求旅行者能获得最大总价值。输入第一行:两个整数,M(背包容量,M≤200)和N(物品数量,N≤30);第2..N+1行:每行二个整数Wi,Ci,表示每个物品的重量和价值。输出仅一行,一个数,表示最大总价值。...原创 2018-04-12 11:11:31 · 477 阅读 · 0 评论 -
[DP] 完全背包问题 HUSTOJ2820
题目描述设有n种物品,每种物品有一个重量及一个价值。但每种物品的数量是无限的,同时有一个背包,最大载重量为M,今从n种物品中选取若干件(同一种物品可以多次选取),使其重量的和小于等于M,而价值的和为最大。输入第一行:两个整数,M(背包容量,M≤200)和N(物品数量,N≤30);第2..N+1行:每行二个整数Wi,Ci,表示每个物品的重量和价值。输出仅一行,一个数,表示最大总价值。样例输入10 4...原创 2018-04-12 11:09:36 · 232 阅读 · 0 评论 -
[简单DP] Cow Bowling POJ3176
DescriptionThe cows don't use actual bowling balls when they go bowling. They each take a number (in the range 0..99), though, and line up in a standard bowling-pin-like triangle like this: ...原创 2018-04-11 22:01:25 · 132 阅读 · 0 评论 -
[DP] 挖地雷 HUSTOJ2814
题目描述在一个地图上有n个地窖(n≤200),每个地窖中埋有一定数量的地雷。同时,给出地窖之间的连接路径,并规定路径都是单向的,且保证都是小序号地窖指向在序号地窖,也不存在可以从一个地窖出发经过若干地窖后又回到原来地窖的路径。某人可以从任一处开始挖地雷,然后沿着指出的连接往下挖(仅能选择一条路径),当无连接时挖地雷工作结束。设计一个挖地雷的方案,使他能挖到最多的地雷。输入第一行:地窖的个数;第二行...原创 2018-04-09 12:37:00 · 440 阅读 · 0 评论 -
[DP] 平分奖品 HUSTOJ3221
题目描述程序设计对抗赛疫有N(0<N<=50的整数)个价值互不相同的奖品,每个奖品的价值分别为S1,S2,S3......Sn(均为不超过100的正整数)。现将它们分给甲乙两队,为了使得甲乙两队得到相同价值的奖品,必须将这N个奖品分成总价值相等的两组。编程要求:对给定N及N个奖品的价值,求出将这N个奖品分成价值相等级的两组,共有多少种分法?例如:N=5,S1,S2,S3......Sn...原创 2018-04-07 05:32:54 · 894 阅读 · 0 评论 -
[DP] 求最长不下降序列 HUSTOJ2811
题目描述设有由n(1≤n≤200)n(1≤n≤200)个不相同的整数组成的数列,记为:b(1)、b(2)、……、b(n)b(1)、b(2)、……、b(n)且b(i)≠b(j)(i≠j)b(i)≠b(j)(i≠j),若存在i1<i2<i3<…<iei1<i2<i3<…<ie 且有b(i1)<=b(i2)<=…<=b(ie)b(i1)&...原创 2018-04-05 19:42:45 · 205 阅读 · 0 评论 -
【DP】 拦截导弹简单版 HUSTOJ3215
题目描述某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。 输入导弹依次飞来的高度(雷达给出的高度数据是不大于30000的正整数,导弹数不超过1000),计算这套系统最多能拦截多少...原创 2018-05-04 15:03:46 · 295 阅读 · 0 评论 -
[DP] 分组背包 HUSTOJ2824
题目描述一个旅行者有一个最多能装V公斤的背包,现在有n件物品,它们的重量分别是W1,W2,...,WnW1,W2,...,Wn,它们的价值分别为C1,C2,...,CnC1,C2,...,Cn。这些物品被划分为若干组,每组中的物品互相冲突,最多选一件。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。输入第一行:三个整数,V(背包容量,V≤200),N(物品数量,N≤30...原创 2018-04-14 00:11:22 · 180 阅读 · 0 评论 -
[DP] 二维背包 潜水员 HUSTOJ2823
题目描述潜水员为了潜水要使用特殊的装备。他有一个带2种气体的气缸:一个为氧气,一个为氮气。让潜水员下潜的深度需要各种的数量的氧和氮。潜水员有一定数量的气缸。每个气缸都有重量和气体容量。潜水员为了完成他的工作需要特定数量的氧和氮。他完成工作所需气缸的总重的最低限度的是多少?例如:潜水员有5个气缸。每行三个数字为:氧,氮的(升)量和气缸的重量:3 36 12010 25 1295 50 2501 45...原创 2018-04-13 23:39:57 · 211 阅读 · 0 评论 -
[DP] 完全背包 货币系统 HUSTOJ2825
题目描述给你一个n种面值的货币系统,求组成面值为m的货币有多少种方案。输入第一行为n和m。输出样例输入3 10125样例输出10#include <iostream>using namespace std;int dp[50000];int main(){ int n, m; cin >> n >> m; int v[500]; for ...原创 2018-04-13 19:22:37 · 413 阅读 · 0 评论 -
[DP/恰好完全背包] 买书 HUSTOJ2845
题目描述小明手里有n元钱全部用来买书,书的价格为10元,20元,50元,100元。问小明有多少种买书方案?(每种书可购买多本)输入一个整数 n,代表总共钱数。(0 ≤ n ≤ 1000)输出一个整数,代表选择方案种数。样例输入20样例输出2#include <bits/stdc++.h>using namespace std;int dp[1005];int main(){ ...原创 2018-04-18 23:27:20 · 189 阅读 · 0 评论 -
[DP/二进制] 数字组合 HUSTOJ2843
题目描述有n个正整数,找出其中和为t(t也是正整数)的可能的组合方式。如:n=5,5个数分别为1,2,3,4,5,t=5;那么可能的组合有5=1+4和5=2+3和5=5三种组合方式。输入输入的第一行是两个正整数n和t,用空格隔开,其中1≤n≤20,表示正整数的个数,t为要求的和(1≤t≤1000);接下来的一行是n个正整数,用空格隔开。输出和为t的不同的组合方式的数目。样例输入5 51 2 3 ...原创 2018-04-18 23:23:45 · 467 阅读 · 0 评论 -
[DP + 序列自动机] 修改子串并询问原串中是否包含子串 CF1150D
D. Three Religionstime limit per test3 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputDuring the archaeological research in the Middle East you foun...原创 2019-05-10 15:39:28 · 205 阅读 · 0 评论