![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DP
YuHsin
退役Oier、ACMer,希望能在这里记录下来自己进步的点点滴滴。Github : https://github.com/YuHsin1998
知乎:https://www.zhihu.com/people/zhao-yu-xin-53-1
展开
-
SPOJ-PUTNIK
题目描述旅行商的目的是走完N个城市,每个城市仅走一次。城市标号1,2…..N。每两个城市之间有一条边,对应一个边权。求出一个旅行的序列,使得权值和最小。旅行商对旅行有着特殊的要求,对于一个标号K的城市,所有标号小于K的要么在游览K之前被游览完,要么只能在游览完K之后才能被游览。旅行可以从任意城市开始和终止。 题目链接: http://www.spoj.com/problems/PUTNIK/分原创 2016-12-31 12:17:50 · 522 阅读 · 2 评论 -
sduacm16级寒假训练 自测
POJ 3579 Median【sol】显然,每个点与其他的点形成的差是有序的,这样相当于有n组升序的序列,询问中位数。二分中位数,然后判断比他小的数的个数,复杂度n* logn*logn#include<cstdio>#include<iostream>#include<cstring>#include<cmath>#include<algorithm>using namespace原创 2017-02-16 16:15:15 · 556 阅读 · 0 评论 -
DP(一)整理
滑雪、传纸条、奶牛的锻炼原创 2017-01-25 17:02:44 · 394 阅读 · 0 评论 -
sduacm16级寒假训练 动态规划(二)
题目链接:https://vjudge.net/contest/148894动态规划二uva 10626 Buying CokeHDU 1500 ChopsticksHDU 3853 LOOPSpoj 1160 Post OfficePOJ 1141 Brackets Sequence总结动态规划(二)uva 10626 Buying Coke[tran]在自动售货机上买n瓶可乐,你有原创 2017-01-30 23:52:26 · 408 阅读 · 0 评论 -
两类树形DP问题
[背景]给定一颗树(多叉),询问按照边(点)的掌管原则,控制次数需要的最小代价按照边 :即对于每条边的两个点,至少有一个点花费代价,询问最小代价[分析]令f[i]代表在第i节点花费代价、看管以i为根的子树的最小代价,g[i]代表i节点不花费代价,显然f[x] =∑ min(f[y],g[y])+1、g[x]=∑f[y]其实很好理解,如果i节点放置,则其儿子节点无所谓,如果i节点不放置,则其儿子节点必原创 2017-01-22 20:40:13 · 449 阅读 · 0 评论 -
2017暑期集训Day 14 树形dp
POJ 2486 Apple TreePOJ 3345 Bribing FIPAPOJ 2378 Tree CuttingPOJ 3107 GodfatherPOJ 3140 Contestants DivisionHDU 5326 WorkCodeForces 696B PuzzlesLightOJ 1382 The Queue原创 2017-07-29 21:36:55 · 383 阅读 · 0 评论 -
2017暑期集训Day 9 递推
题目地址A Tiling[Solution]递推的时候保证第n个方案是新方案即可,第n块可以使2*2,也可以是1*2的一块,亦或是1*2横过来的两块,这样F[N] = 2 * F[n - 2] + F[n - 1]Ps: 这道题目需要用到高精度,我是用了java的BigInteger来搞的,BigInteger是在math类下的包,另外java程序提交的时候需要把class的名称改成Main,注意M原创 2017-07-21 11:00:32 · 300 阅读 · 0 评论 -
2017暑期集训Day 11 背包
A - Bottles[Problem]有n个苏打水的瓶子,每瓶中装有一定量苏打水,给你每瓶的体积,现在像把这些苏打水装到尽量少的瓶子中,并且移动尽可能少的苏打水。[Solution]f[i]代表凑齐i体积需要瓶子的最小数量,g[i]代表盛有的苏打水体积,在满足f[i]尽可能小的情况下,g[i]最大[Code]#include<cstdio>#include<iostream>#include<原创 2017-07-21 20:16:32 · 483 阅读 · 0 评论 -
2017暑期集训Day 14 区间dp+二分图匹配
题目链接A Multiplication Puzzle[Solution]区间dp水题[Code]#include<cstdio>#include<iostream>#include<vector>#include<cstring>#include<algorithm>using namespace std;typedef long long ll;const int N = 1000原创 2017-07-25 21:02:30 · 333 阅读 · 0 评论