• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
 






Storm_Spirit

不忘初心,方得始终。
 
 

Powered by 博客园
博客园 | 首页 | 新随笔 | 联系 | 订阅 订阅 | 管理

随笔分类 -  DP

上一页 1 2 3 下一页

 
HDU 1160 FatMouse's Speed ——(DP)
摘要:又是那个lis变形的题目。 但是不好定义严格的比较符号,因此只能n^2去做。值得注意的一个是要先排序,因为可能可以先选后面的再选前面的,先排序的话就能够避免这个问题。但是要注意,因为要输出路径,所以要记录之前的id。 代码如下: 阅读全文
posted @ 2017-02-15 18:06 Storm_Spirit 阅读(160) 评论(0) 推荐(0)
HDU 1114 Piggy-Bank ——(完全背包)
摘要:差不多是一个裸的完全背包,只是要求满容量的最小值而已。那么dp值全部初始化为inf,并且初始化一下dp[0]即可。代码如下: 阅读全文
posted @ 2017-02-15 11:14 Storm_Spirit 阅读(108) 评论(0) 推荐(0)
poj 1458 Common Subsequence ——(LCS)
摘要:虽然以前可能接触过最长公共子序列,但是正规的写应该还是第一次吧。 直接贴代码就好了吧: 阅读全文
posted @ 2017-02-15 10:59 Storm_Spirit 阅读(109) 评论(0) 推荐(0)
HDU 1087 Super Jumping! Jumping! Jumping! ——(LIS变形)
摘要:和之前那个长方体最大高度是换汤不换药的题目。每次找之前最大的一个能接的接上即可。代码如下: 阅读全文
posted @ 2017-02-15 09:52 Storm_Spirit 阅读(101) 评论(0) 推荐(0)
HDU 1257 最少拦截系统 ——(LIS)
摘要:想了一下感觉和lis有关,交了果然AC。想不到很好的证明方法,试做证明如下:lis的每一个点都是一个不上升系统中的一员,设其为a[i],那么a[i-1]<a[i]肯定是成立的(lis的性质),夹在这两者之间的一个元素x,如果其>=a[i],那么它肯定属于a[i]这个系统,如果它小于a[i],且:1. 阅读全文
posted @ 2017-02-15 09:38 Storm_Spirit 阅读(99) 评论(0) 推荐(0)
HDU 1074 Doing Homework ——(状态压缩DP)
摘要:考虑到n只有15,那么状压DP即可。 题目要求说输出字典序最小的答案的顺序,又考虑到题目给出的字符串本身字典序是递增的,那么枚举i的时候倒着来即可。因为在同样完成的情况下,后选字典序大的,小的字典序就会在前面,那么整体的字典序就会更小。代码如下: 阅读全文
posted @ 2017-02-14 19:48 Storm_Spirit 阅读(119) 评论(0) 推荐(0)
HDU 1069 Monkey and Banana ——(DP)
摘要:简单DP。 题意:给出若干种长方体,如果摆放时一个长方体的长和宽小于另一个的长宽,那么它可以放在另一个的上面,问最高能放多少高度。每种长方体的个数都是无限的。 做法:因为每种个数都是无限,那么每种按照x,y,z分别重新排列可以得到6种长方体。现在用dp[i]表示选到第i个且第i个必须使用的最大高度, 阅读全文
posted @ 2017-02-14 10:07 Storm_Spirit 阅读(157) 评论(0) 推荐(0)
HDU 1024 Max Sum Plus Plus ——(M段区间的最大和)
摘要:感觉有点奇怪的是这题明明是n^2的复杂度,n=1e6竟然能过= =。应该是数据水了。 dp[i][j]表示前j个数,分成i段,且最后一段的最后一个为a[j]的答案。那么转移式是:dp[i][j] = max(dp[i][j-1], max{dp[i-1][t]}) + a[j],(i-1<=t<=j 阅读全文
posted @ 2017-02-13 12:36 Storm_Spirit 阅读(128) 评论(0) 推荐(0)
Codeforces Round #367 (Div. 2)
摘要:AB都是水题。 C题,DP题。没能够独立的做出来,但是会了以后感觉还是蛮简单的= =。代码如下: 1 #include <stdio.h> 2 #include <algorithm> 3 #include <string.h> 4 #include <iostream> 5 #include <m 阅读全文
posted @ 2017-02-10 15:15 Storm_Spirit 阅读(103) 评论(0) 推荐(0)
Codeforces Round #396 (Div. 2)
摘要:AB都是大水题。 C题,题意稍微有点晦涩。但是还是一个比较简单的dp(虽然我不是独立的做出来的= =)。感觉我dp掌握的不是很好啊;看到这题突然想起前几天碰到的一题:不考虑顺序的整数划分问题。C题代码如下: 1 #include <stdio.h> 2 #include <algorithm> 3 阅读全文
posted @ 2017-02-08 17:46 Storm_Spirit 阅读(132) 评论(0) 推荐(0)
全是1的最大子矩阵问题
摘要:前一次寒假排位赛中遇到了这个问题,后来思考了一下。写个类似问题的总结。 这题的模型可以在51nod中找到:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1158。但是其问题规模比较小,n^3暴力似乎都可以。 正解应当是单调 阅读全文
posted @ 2017-02-04 12:47 Storm_Spirit 阅读(267) 评论(0) 推荐(0)
2017 ZSTU寒假排位赛 #7
摘要:题目链接:https://vjudge.net/contest/149498#overview。 A题,水题,直接按照题意模拟一下即可。 B题,我用的是线段树。大力用的差分标记(上次听zy说过,下次再做些类似的题目好了),lyf的方法也不错。 C题,不难发现,00是不能变成其他的,而11可以变成10 阅读全文
posted @ 2017-02-03 12:32 Storm_Spirit 阅读(132) 评论(0) 推荐(0)
Codeforces Round #369 (Div. 2)
摘要:A题,水题,暴力找即可。 B题,水题,但是需要注意n=1的情况。 C题,dp。虽然是个水dp,但是我还是没能够自己独立的写出来。= =太菜了!代码如下: 1 #include <stdio.h> 2 #include <algorithm> 3 #include <string.h> 4 #incl 阅读全文
posted @ 2017-02-01 21:53 Storm_Spirit 阅读(138) 评论(0) 推荐(0)
2017 ZSTU寒假排位赛 #6
摘要:题目链接:https://vjudge.net/contest/149212#overview。 A题,水题,略过。 B题,水题,读清题意即可。 C题,数学题,如果把x表示成x=nb+m,则k=n/m属于[1,a],m属于[1,b-1]。然后由第一个式子得到n=(x-m)/b,那么带入第二个式子得, 阅读全文
posted @ 2017-01-30 20:57 Storm_Spirit 阅读(163) 评论(0) 推荐(0)
2017 ZSTU寒假排位赛 #4
摘要:题目链接:https://vjudge.net/contest/148543#overview。 A题:n个罪犯,每个人有一个犯罪值,现在要从里面选出连续的c个人,每个人的犯罪值都不能超过t,问选法的种类数。O(n)xjbg一下即可: 1 #include <stdio.h> 2 #include 阅读全文
posted @ 2017-01-22 20:08 Storm_Spirit 阅读(159) 评论(0) 推荐(0)
2017 ZSTU寒假排位赛 #3
摘要:题目链接:https://vjudge.net/contest/147974#overview。 A题,费用流,不会。。跳过了。 B题,给一个图,问至少添加几条边能成为强连通图。显然缩点,要使得成为一个scc,任意一个点都要至少一个入度和出度,而一条边可以提供一个入度和出度,因为答案为max(入度为 阅读全文
posted @ 2017-01-19 09:18 Storm_Spirit 阅读(122) 评论(0) 推荐(0)
HDU 3689 Infinite monkey theorem ——(自动机+DP)
摘要:这题由于是一个单词,其实直接kmp+dp也无妨。建立自动机当然也是可以的。设dp[i][j]表示匹配到第i个字母的时候,在单词中处于第j个位置的概率,因此最终的答案是dp[0~m][len],m是输入的长度,len是单词的长度。转移方程见代码,即在一个节点的位置时,枚举下一步的走法,乘以这种走法的概 阅读全文
posted @ 2017-01-18 10:25 Storm_Spirit 阅读(175) 评论(0) 推荐(0)
2017 ZSTU寒假排位赛 #1
摘要:题目链接:https://vjudge.net/contest/147102#overview。 A题:给出一堆的点,要找出两条垂直的直线,一条与x轴呈45度。-->使得所有的点到任意一条直线的最短曼哈顿距离(具体见题意描述)的最大值最小。做法是先把坐标轴逆时针旋转45度,x'=(x-y)/sqrt 阅读全文
posted @ 2017-01-15 08:46 Storm_Spirit 阅读(118) 评论(0) 推荐(0)
hihoCoder #1199 : Tower Defense Game ——(树型dp)
摘要:题目链接:https://hihocoder.com/problemset/problem/1199。 题意:一棵以1为根的树,每个点有一个p值和q值,到这个点需要当前分数大于等于p,然后消耗掉(p-q)的分数。问一种遍历方式,使得一开始在1所需的分数最小并能够遍历完所有的点。 分析见代码: 阅读全文
posted @ 2016-12-21 21:16 Storm_Spirit 阅读(178) 评论(0) 推荐(0)
codeforces 742D Arpa's weak amphitheater and Mehrdad's valuable Hoses ——(01背包变形)
摘要:题意:给你若干个集合,每个集合内的物品要么选任意一个,要么所有都选,求最后在背包能容纳的范围下最大的价值。 分析:对于每个并查集,从上到下滚动维护即可,其实就是一个01背包= =。 代码如下: 阅读全文
posted @ 2016-12-17 15:32 Storm_Spirit 阅读(245) 评论(0) 推荐(0)
 

上一页 1 2 3 下一页