DP
文章平均质量分 63
tyh24689
这个作者很懒,什么都没留下…
展开
-
HDU1160——FatMouse's Speed(DP入门)
http://acm.hdu.edu.cn/showproblem.php?pid=1160先介绍一下题目的大意:输入一串序列:w1 s1w2 s2.... ....wn sn要求输出w严格递增 ,s严格递减的序列的最大长度。并且按顺序输出下标。样例输入:6008 13006000 2100500 20001000 400原创 2014-03-25 21:29:56 · 703 阅读 · 1 评论 -
HDU2196——Computer(树形DP,经典)
题目连接题目解析经典的树形DP题。 题意是求树中每个点到所有叶子节点的距离的最大值是多少。 由于对于一个节点来说,可能得到的距离最大的值的路径来自他的子树,或者从他的父节点过来,所以用两次DFS。 第一次DFS求出所有节点在他的子树范围内到叶子节点距离的最大值和第二大的值,第二次DFS更新从父节点过来的情况就可以了。 因为如果只存最大值的话,判断一个点的从父节点过来的最大值,那么如果他的父节原创 2015-06-09 16:03:49 · 564 阅读 · 0 评论 -
HDU5259(百度之星复赛1002)——弹吉他(DP)
题目连接题目分析这是一道比较典型的DP题目,但是题目的状态数量比较多,转移数量也比较多,所以枚举起来会比较麻烦,所以可以用一个技巧就是可以预处理出所有的序列然后用序列枚举状态转移,这样会使代码简洁很多。#include <iostream>#include <algorithm>#include <cstdio>#include <cstring>#include <cmath>#incl原创 2015-06-09 16:08:25 · 772 阅读 · 0 评论 -
HDU3555——Bomb(数位DP)
题意:求1-N之间的所有的包含49的数字原创 2014-08-14 18:47:47 · 536 阅读 · 0 评论 -
ACdream1072——Kill The Monster
题目地址#include <iostream>#include <algorithm>#include <cstdio>#include <cstring>#include <cmath>#include <cstdlib>#include <vector>using namespace std;typedef long long LL;const int MOD = 1e9 + 7原创 2015-05-13 15:07:03 · 616 阅读 · 0 评论 -
CF507E——Breaking Good(BFS,DP)
507EBreaking Gooddfs and similar, graphs, shortest paths x328题意:给你一些道路,道路长度都为1,道路有两个状态可用和不可用。 寻找一条1到N的最短路,使得该最短路上的道路全部可用,其他道路全部不可用,要求改变状态的道路数量尽量小。分析:1-N的最短路的长度一定原创 2015-01-24 16:23:38 · 898 阅读 · 0 评论 -
UVA 10817——Headmaster's Headache(DP)
Problem D: Headmaster's HeadacheTime limit: 2 secondsThe headmaster of Spring Field School is considering employing some new teachers for certain subjects. There are a number o原创 2015-01-03 18:26:27 · 392 阅读 · 0 评论 -
HDU4770 —— Lights Against Dudely (状态压缩,暴力枚举)
#include <iostream>#include <algorithm>#include <cmath>#include <cstring>#include <cstdio>#include <cstdlib>#include <vector>using namespace std;typedef long long LL;const int INF = 0x7fffffff;原创 2015-02-14 17:32:44 · 639 阅读 · 0 评论 -
CF505C——Mr. Kitayuta, the Treasure Hunter(DP)
CMr. Kitayuta, the Treasure Hunterstandard input/output1 s, 256 MB x170比赛的时候没有做出来。。。首先这个题目很自然的一种状态表示方法就是 记录当前位置pos和最后一次跳跃距离len , 结果保存为dp[pos][len],但是这两个数的范围都是300原创 2015-01-19 19:27:41 · 1222 阅读 · 0 评论 -
POJ3368——Frequent values(RMQ)
Frequent valuesTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 13535 Accepted: 4981DescriptionYou are given a sequence of n integers a1 , a2 , ... , a原创 2014-10-26 19:14:47 · 462 阅读 · 0 评论 -
CPC3——H.喵喵的最长序列(RMQ|单调队列)
H.喵喵的最长序列Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 3 Solved: 2[Submit][Status][Web Board]Description喵喵刚做完LCS,LIS,LCIS啥的,突然想到一个非常Naive的问题。给你一个序列a,求一个序列的最长连续子串a[i]~a[j]使得m原创 2014-10-26 18:50:02 · 508 阅读 · 0 评论 -
UVA11795——Mega Mans Missions(集合DP,状态压缩)
BMega Mans MissionsInputStandard InputOutputStandard Output Mega Man is off to save the world again. His objective is to kill the Robots created by原创 2014-09-04 16:16:04 · 557 阅读 · 0 评论 -
CF463C——Gargari and Bishops(模拟)
C. Gargari and Bishopstime limit per test3 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputGargari is jealous that his friend C原创 2014-09-01 19:01:08 · 565 阅读 · 0 评论 -
UVA11552——Fewest Flops(DP)
FEWEST FLOPSA common way to uniquely encode a string is by replacing its consecutive repeating characters (or “chunks”) by the number of times the character occurs followed by the charac原创 2014-08-27 15:09:48 · 463 阅读 · 0 评论 -
CF417D——Cunning Gena(状态压缩DP)
#include #include #include #include #include #include using namespace std;typedef long long LL;const LL INF = 41e18;struct node{ int x,k,s;}f[105];LL dp[ (1<<20)+10 ];int cmp(node原创 2014-08-20 16:38:17 · 899 阅读 · 0 评论 -
HDU1074——Doing Homework(状态压缩DP)
Doing HomeworkTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 5238 Accepted Submission(s): 2190Problem DescriptionIgnatius ha原创 2014-08-20 23:08:20 · 464 阅读 · 0 评论 -
ACM暑假培训——贪心、动态规划专题
A题意:有n个任务,每个任务有三个参数ri,di和wi,表示必须在时刻[ri,di]之内执行,工作量为wi。处理器执行速度可以变化,当执行速度为s时,工作量为wi。处理器的速度可以变化,当执行速度为s时,一个工作量为wi的任务需要执行wi/s个单位时间。任务不一定连续执行,可以分成若干块。求出处理器执行过程中最大速度的最小值。分析:看到最大值的最小值,首先想到要用二分枚举答案,而且原创 2014-07-26 15:09:51 · 579 阅读 · 0 评论 -
Codeforces Round #316 (Div. 2) E. Pig and Palindromes
E. Pig and Palindromes题目大意给定一个N*M(N,M <= 500)的字符矩阵,从(1,1)走到(N,M),每次只能向右和向下走,那么有多少种走法可以组成一个回文串。题目分析想要形成回文串,显然,从起点出发经过的字符要与从终点出发经过的字符相同。 所以相当于一个点从(1, 1)开始向右或向下走,另一个点从(n, m)开始向左或向上走,并且每次双方走的字符必须相同。 这样就可原创 2015-08-14 20:54:59 · 781 阅读 · 0 评论