dp专题
文章平均质量分 52
renxinyu2002
虽然我们走不了最短路,但图依然是连通图
展开
-
会议树的重心模板
#include#include#include#includeusing namespace std;const int maxn=1e5+10; int n,cnt,m,v[maxn],ans=100000000,ans1,nxt[maxn],head[maxn],dp[maxn],dp1[maxn],cur[maxn];void add(int x,int y原创 2017-10-31 23:46:44 · 184 阅读 · 0 评论 -
疯狂的采药(完全背包模板)
#include#include#include#includeusing namespace std;const int maxn=100010; int f[maxn],n,t,h[maxn],v[maxn]; int main(){ scanf("%d%d",&t,&n); for(int i=1;i //for(int i=1;i原创 2017-11-01 12:49:01 · 281 阅读 · 0 评论 -
不等数列
#include#include#include#include#include using namespace std;const int mod=2015;int n,k;long long dp[1010][1010];int main(){ scanf("%d%d",&n,&k); dp[0][0]=1; for(int i原创 2017-10-25 11:07:37 · 247 阅读 · 0 评论 -
三角形牧场
#include#include#include#include#include using namespace std;int l[50],tot;bool dp[1601][1601];bool c(int x,int y,int z){ if((x+y)>z&&(y+z)>x&&(x+z)>y) return true;原创 2017-10-25 11:08:26 · 298 阅读 · 0 评论 -
区间dp(usaco宝箱)
#include#include#include#includeusing namespace std;const int maxn=5010;int n,a[maxn],dp[maxn][maxn][2],s[maxn];int main(){ scanf("%d",&n); for(int i=1;i for(int i=1;i for(int k=原创 2017-10-25 12:34:50 · 234 阅读 · 0 评论 -
改造二叉树(lis+中序遍历)
#include#include#include#include#include using namespace std;const int maxn=1e5+10;int n,cnt,num[maxn],len,a[maxn],fa[maxn],l[maxn],r[maxn],dp[maxn];void dfs(int x){ if(x==0) retu原创 2017-10-25 15:17:55 · 226 阅读 · 0 评论