dp
smiling~
努力会被看得到的
展开
-
Knapsack problem(01背包变形)
Given a set of n items, each with a weight w[i] and a value v[i], determine a way to choose the items into a knapsack so that the total weight is less than or equal to a given limit B and the total va...原创 2019-05-01 23:59:31 · 240 阅读 · 0 评论 -
2019南京网络赛题目F Greedy Sequence(暴力/set+二分 预处理 + 记忆化搜索)
题目链接题意: 从1到n一行内输出si,si为数字i开头的满足题目要求的序列长度。题目要求此序列满足:1.相邻两元素在原数组中的距离不超过k。2.该序列以字典序为第一优先级(越大越好)。3.序列中无重复元素。思路: 字典序为第一优先级,那么每个元素的后面跟的一定是以它为中心2k范围内<=它的最大元素。那么记忆化搜索一下。但是这个k如果很大的话,每次枚举找它的下一个元素的过程就...原创 2019-09-03 22:03:02 · 195 阅读 · 0 评论 -
牛牛的宝可梦Go(dp+floyd)
题目链接:传送门来源:牛客网题目描述牛牛所在的W市是一个不太大的城市,城市有n个路口以及m条公路,这些双向连通的公路长度均为1,保证你可以从一个城市直接或者间接移动到所有的城市。牛牛在玩宝可梦Go,众所周知呢,这个游戏需要到城市的各个地方去抓宝可梦,假设现在牛牛知道了接下来将会刷出k只宝可梦,他还知道每只宝可梦的刷新时刻、地点以及该宝可梦的战斗力,如果在宝可梦刷新时,牛牛恰好在那个路口,他就...原创 2020-02-09 13:17:17 · 1117 阅读 · 1 评论 -
HDU - 4055 Number String(dp+前缀和优化)
The signature of a permutation is a string that is computed as follows: for each pair of consecutive elements of the permutation, write down the letter ‘I’ (increasing) if the second element is greate...原创 2019-08-27 10:58:58 · 274 阅读 · 0 评论 -
HDU - 1428 漫步校园 (最短路+记忆化搜索)
LL最近沉迷于AC不能自拔,每天寝室、机房两点一线。由于长时间坐在电脑边,缺乏运动。他决定充分利用每次从寝室到机房的时间,在校园里散散步。整个HDU校园呈方形布局,可划分为n*n个小方格,代表各个区域。例如LL居住的18号宿舍位于校园的西北角,即方格(1,1)代表的地方,而机房所在的第三实验楼处于东南端的(n,n)。因有多条路线可以选择,LL希望每次的散步路线都不一样。另外,他考虑从A区域到B区域...原创 2019-08-26 10:37:34 · 217 阅读 · 0 评论 -
UVA - 10118 Free Candies(经典记忆化搜索)
Little Bob is playing a game. He wants to win some candies in it - as many as possible.There are 4 piles, each pile contains N candies. Bob is given a basket which can hold at most 5candies. Each ti...原创 2019-08-25 20:22:19 · 158 阅读 · 0 评论 -
POJ - 1579 Function Run Fun(裸记忆化搜索)
We all love recursion! Don’t we?Consider a three-parameter recursive function w(a, b, c):if a <= 0 or b <= 0 or c <= 0, then w(a, b, c) returns:1if a > 20 or b > 20 or c > 20, th...原创 2019-08-25 17:13:27 · 150 阅读 · 0 评论 -
Hdu-1501 Zipper(记忆化搜索)
Problem DescriptionGiven three strings, you are to determine whether the third string can be formed by combining the characters in the first two strings. The first two strings can be mixed arbitraril...原创 2019-08-25 11:13:36 · 187 阅读 · 1 评论 -
Bomb HDU - 3555(经典数位dp)
The counter-terrorists found a time bomb in the dust. But this time the terrorists improve on the time bomb. The number sequence of the time bomb counts from 1 to N. If the current number sequence inc...原创 2019-08-11 21:23:07 · 563 阅读 · 0 评论 -
CodeForces - 1036C Classy Numbers(数位dp)
题目链接:http://codeforces.com/problemset/problem/1036/C题意:求出l-r范围内,数位上非零数字个数<=3的数字个数。思路:因为状态只和非零数字有关,所以不用管前导0,那么两维数组,dp[i]][j]表示后面需要算的还有i位,前面非零数字已经有j个的时候,有多少个数字满足条件。#include<iostream>#includ...原创 2019-08-15 12:05:38 · 111 阅读 · 0 评论 -
POJ-3252 Round Numbers(数位dp)
DescriptionThe cows, as you know, have no fingers or thumbs and thus are unable to play Scissors, Paper, Stone’ (also known as ‘Rock, Paper, Scissors’, ‘Ro, Sham, Bo’, and a host of other names) in o...原创 2019-08-15 11:49:51 · 159 阅读 · 0 评论 -
HDU-2089 不要62(经典数位dp)
Problem Description杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer)。杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍,更安全地服务大众。不吉利的数字为所有含有4或62的号码。例如:62315 73418 88914都属于不吉利号码。但是,61152虽然含有6和2,但不是...原创 2019-08-15 10:42:28 · 92 阅读 · 0 评论 -
Balanced Numbers SPOJ - BALNUM (数位dp+三进制状态压缩)
Balanced numbers have been used by mathematicians for centuries. A positive integer is considered a balanced number if: Every even digit appears an odd number of times in its decimal representation...原创 2019-08-15 10:25:14 · 156 阅读 · 1 评论 -
2019年我能变强组队训练赛第二场 问题 K: PACKING (01背包+快读+o3优化)
题目描述It was bound to happen. Modernisation has reached the North Pole. Faced with escalating costs for feeding Santa Claus and the reindeer, and serious difficulties with security, NP Management has...原创 2019-08-11 09:28:58 · 207 阅读 · 0 评论 -
HDU - 5115 Dire Wolf(区间dp)
Dire wolves, also known as Dark wolves, are extraordinarily large and powerful wolves. Many, if not all, Dire Wolves appear to originate from Draenor.Dire wolves look like normal wolves, but these cr...原创 2019-08-28 13:31:52 · 198 阅读 · 0 评论 -
HihoCoder - 1829 Tomb Raider (暴力+最长上升子序列)
题目链接题意:给n个字符串,输出他们的字典序最小的最长上升子序列(子序列定义为长度不超过8的,每个串自身和自身拼接后的子序列)。思路:最多10个样例,字符串最多10个,每个串长度最多为8,指数级别都可以接受。。就暴力递归找出其中一个串的所有可能的子序列,答案一定是其中一个,排序后(长度为第一优先级,字典序为第二优先级)依次与其他串匹配,看能否和其他所有串匹配成功,若可以,就返回这个串。若所有子...原创 2019-09-03 20:33:33 · 234 阅读 · 0 评论 -
Hdu 5542 The Battle of Chibi(最长上升子序列+树状数组优化)
传送门题意:给定一个长度为n的序列,问长度为m的上升子序列有多少个。思路:最初的想法是三重循环,dp[i][j]表示以a[i]结尾的长度为j的上升子序列的个数。开始的代码: for(int i=1;i<=n;i++) { dp[i][1]=1; for(int k=1;k<=m;k++) ...原创 2019-10-10 12:12:21 · 182 阅读 · 0 评论 -
Hdu 5543 Pick The Sticks(01背包变形)
传送门题意:给定n个长度为v[i], 价值为w[i]的木棍,问在总长度不超过l的情况下最大价值是多少。限制条件是:两端的木棍可以一半在长度范围内,一半在外面。,,,快把评测姬wa穿了也没做出来,,白做那么多背包的题了,,,生气思路:最多两个木棍可以一半长度在里面,那么放长度为一半的木棍的时候必须确保状态转移的时候不能从之前放的已经有两个木棍放了一半的情况下转移,,我试图用一维dp做,,结...原创 2019-10-10 10:33:47 · 123 阅读 · 0 评论 -
多重背包单调队列优化
qwq感觉看懂了但不知道怎么表达,先用着再说吧,,,看这位大佬的博客看懂的多重背包单调队列优化模板:#include<iostream>#include<cstring>#include<cstdio>using namespace std;#define fi first#define se secondconst int N = 100...原创 2019-10-05 18:29:18 · 188 阅读 · 1 评论 -
最长公共上升子序列问题
最长上升子序列和最长公共子序列的结合,这里给出O(n2)做法dp[i][j]表示以b[j]结尾的,a数组中的前i个元素与b数组中的前j个元素可以构成的最长公共子序列的长度。转移方程:分两种情况讨论:1.a[i]不包含在子序列中(a[i] != b[j] 或者相等但是不选择a[i])dp[i][j] = dp[i-1][j]2.a[i]包含在子序列中dp[i][j] = max( dp...原创 2019-10-03 16:39:17 · 333 阅读 · 0 评论 -
Acwing 1027. 方格取数(四维dp)
传送门设有 N×N 的方格图,我们在其中的某些方格中填入正整数,而其它的方格中则放入数字0。如下图所示:某人从图中的左上角 A 出发,可以向下行走,也可以向右行走,直到到达右下角的 B 点。在走过的路上,他可以取走方格中的数(取走后的方格中将变为数字0)。此人从 A 点到 B 点共走了两次,试找出两条这样的路径,使得取得的数字和为最大。输入格式第一行为一个整数N,表示 N×N 的方格...原创 2019-10-02 11:43:16 · 251 阅读 · 0 评论 -
Acwing 1020.潜水员 (二维约束的01背包)
传送门潜水员为了潜水要使用特殊的装备。他有一个带2种气体的气缸:一个为氧气,一个为氮气。让潜水员下潜的深度需要各种数量的氧和氮。潜水员有一定数量的气缸。每个气缸都有重量和气体容量。潜水员为了完成他的工作需要特定数量的氧和氮。他完成工作所需气缸的总重的最低限度的是多少?例如:潜水员有5个气缸。每行三个数字为:氧,氮的(升)量和气缸的重量:3 36 12010 25 1295 5...原创 2019-10-02 10:27:16 · 241 阅读 · 0 评论 -
2019ccpc秦皇岛 Invoker(dp / 递推)
Problem Description在 dota2 中有一个叫做祈求者(Invoker)的英雄,在游戏中他有三个基础技能:冰(Quas),雷(Wex),火(Exort),每施展一个技能就可以获得相应属性的一个法球(element)。但是祈求者同时最多只能有三个法球,即如果他在有三个法球的状态下又使用了某个法球技能,那么他会获得该法球,并失去之前三个法球中最先获得的一个。不难得出,祈求者身上...原创 2019-09-29 20:53:56 · 352 阅读 · 0 评论 -
CodeForces - 455A Boredom(dp)
传送门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 decided to play it.Given a sequence a consisting of n inte...原创 2019-09-25 19:18:32 · 293 阅读 · 0 评论 -
HDU-5965 扫雷(dp / 递推)
传送门扫雷游戏是晨晨和小璐特别喜欢的智力游戏,她俩最近沉迷其中无法自拔。该游戏的界面是一个矩阵,矩阵中有些格子中有一个地雷,其余格子中没有地雷。 游戏中,格子可能处于己知和未知的状态。如果一个己知的格子中没有地雷,那么该 格子上会写有一个一位数,表示与这个格子八连通相邻的格子中地雷总的数量。现在,晨晨和小璐在一个3行N列(均从1开始用连续正整数编号)的矩阵中进 行游戏,在这个矩阵中,第2行的...原创 2019-09-25 17:05:03 · 233 阅读 · 0 评论 -
2019上海网络赛问题J Stone game (背包问题求方案数)
原题链接题意:集合划分,使得满足这两个式子,有多少种方案,其中s’为任意子集,s-s’表示补集,t为s中任意元素的组合,其实只要最小的元素满足了,这个式子一定满足思路:从大到小排序,进行普通01背包求方案数,当前的a[i]即为子集最小元素,如果这个子集满足要求,那么dp[j-a[i]]即为当前方案数,将其加进答案里即可。我也太菜了叭,我也太菜了叭,我也太菜了叭…我真的白瞎做那么多背包的题了...原创 2019-09-20 10:47:59 · 133 阅读 · 0 评论 -
HDU - 5492 Find a path(dp)
题目链接题意:其实就是求路径上方差的最小值开始的时候想到dp了,但是没想到要怎么保存状态,,,(太菜了还是),后来又觉得是贪心,wa到自闭,,,太难了思路:将原公式变形,(推几步就能推出来),最后原公式变为ans=(n+m-1) * sum2 - sum*sum(其中sum2为路径平方和,sum为路径和)那么只要让平方和尽量小就可以了,dp[i][j][k]表示i,j这个点,路径和为k...原创 2019-09-10 17:56:16 · 147 阅读 · 0 评论 -
Computer HDU - 2196 (树形dp)
A school bought the first computer some time ago(so this computer’s id is 1). During the recent years the school bought N-1 new computers. Each new computer was connected to one of settled earlier. Ma...原创 2019-08-14 14:37:19 · 155 阅读 · 0 评论 -
Acwing 91. 最短Hamilton路径 (状压dp)
题目链接:https://www.acwing.com/problem/content/93/给定一张 n 个点的带权无向图,点从 0~n-1 标号,求起点 0 到终点 n-1 的最短Hamilton路径。 Hamilton路径的定义是从 0 到 n-1 不重不漏地经过每个点恰好一次。输入格式第一行输入整数n。接下来n行每行n个整数,其中第i行第j个整数表示点i到j的距离(记为a[i,j]...原创 2019-08-07 17:40:08 · 140 阅读 · 0 评论 -
Find the Marble ZOJ - 3605(三维dp)
Alice and Bob are playing a game. This game is played with several identical pots and one marble. When the game starts, Alice puts the pots in one line and puts the marble in one of the pots. After th...原创 2019-06-07 19:17:32 · 97 阅读 · 0 评论 -
LightOj 1422 Halloween Costumes(区间dp)
Gappu has a very busy weekend ahead of him. Because, next weekend is Halloween, and he is planning to attend as many parties as he can. Since it’s Halloween, these parties are all costume parties, Gap...原创 2019-06-07 01:09:37 · 85 阅读 · 0 评论 -
石子归并(区间dp模板题)
现在有n堆石子,第i堆有ai个石子。现在要把这些石子合并成一堆,每次只能合并相邻两个,每次合并的代价是两堆石子的总石子数。求合并所有石子的最小代价。Input第一行包含一个整数T(T<=50),表示数据组数。每组数据第一行包含一个整数n(2<=n<=100),表示石子的堆数。第二行包含n个正整数ai(ai<=100),表示每堆石子的石子数。Output每组数据仅...原创 2019-06-01 00:58:47 · 376 阅读 · 0 评论 -
Cutting Sticks(区间dp)
You have to cut a wood stick into pieces. The most affordable company, The Analog Cutting Machinery,Inc. (ACM), charges money according to the length of the stick being cut. Their procedure of workr...原创 2019-06-01 00:39:28 · 265 阅读 · 0 评论 -
蓝桥杯历届试题 对局匹配 (分组dp)
小明喜欢在一个围棋网站上找别人在线对弈。这个网站上所有注册用户都有一个积分,代表他的围棋水平。小明发现网站的自动对局系统在匹配对手时,只会将积分差恰好是K的两名用户匹配在一起。如果两人分差小于或大于K,系统都不会将他们匹配。现在小明知道这个网站总共有N名用户,以及他们的积分分别是A1, A2, … AN。小明想了解最多可能有多少名用户同时在线寻找对手,但是系统却一场对局都匹配不起来(任意两名...原创 2019-05-12 20:43:23 · 643 阅读 · 2 评论 -
免费馅饼(线性dp)
都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼。说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在他身旁的10米范围内。馅饼如果掉在了地上当然就不能吃了,所以gameboy马上卸下身上的背包去接。但由于小径两侧都不能站人,所以他只能在小径上接。由于gameboy平时老呆在房间里玩游戏,虽然在游戏中是个身手敏捷的高手,但在现实中运动神经特别迟钝...原创 2019-05-14 15:31:12 · 150 阅读 · 0 评论 -
导弹拦截系统(贪心 / Dilworth定理+最长上升子序列)
某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能超过前一发的高度.某天,雷达捕捉到敌国的导弹来袭.由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹.怎么办呢?多搞几套系统呗!你说说倒蛮容易,成本呢?成本是个大问题啊.所以俺就到这里来求救了,请帮助计算一下最少需要多少套拦截系统....原创 2019-05-13 23:23:38 · 843 阅读 · 0 评论 -
hdu3033---I love sneakers! (变形分组背包)
After months of hard working, Iserlohn finally wins awesome amount of scholarship. As a great zealot of sneakers, he decides to spend all his money on them in a sneaker store.There are several brands...原创 2019-05-13 22:10:13 · 139 阅读 · 0 评论 -
Cash Machine (多重背包)
A Bank plans to install a machine for cash withdrawal. The machine is able to deliver appropriate @ bills for a requested cash amount. The machine uses exactly N distinct bill denominations, say Dk, k...原创 2019-05-13 20:49:18 · 173 阅读 · 0 评论 -
蓝桥杯历届试题 格子刷油漆(动态规划)
格子刷油漆X国的一段古城墙的顶端可以看成 2*N个格子组成的矩形(如下图所示),现需要把这些格子刷上保护漆。你可以从任意一个格子刷起,刷完一格,可以移动到和它相邻的格子(对角相邻也算数),但不能移动到较远的格子(因为油漆未干不能踩!)比如:a d b c e f 就是合格的刷漆顺序。c e f d a b 是另一种合适的方案。当已知 N 时,求总的方案数。当N较大时,结果会迅速增大,请...原创 2019-04-14 12:28:55 · 742 阅读 · 0 评论 -
背包九讲----整理+例题
背包九讲类型汇总:1.01背包问题2.完全背包问题3.多重背包问题4.混合背包问题5.二维费用的背包问题6.分组背包问题7.背包问题求方案数8.求背包问题的方案9.有依赖的背包问题注:以下所有题目来源于ACwing题库,链接:https://www.acwing.com/problem/这里每个类型基本都是具体题目+自己的一些体会+代码,背包九讲的理论以及解析证明之类的...原创 2019-04-21 14:08:22 · 37712 阅读 · 10 评论