摘要: 思路:dp[i][0]表示第i个节点为根的子树变成以i为一头的长链最小的花费,dp[i][0]表示表示第i个节点为根的子树变成i不是头的长链最小花费。那么动态方程也就不难想了,就是要分几个情况处理,细心就好。#pragma comment(linker, "/STACK:1024000000,1024000000")#include#include#include#include#include#define inf 10000000#define Maxn 1100010using namespace std;int vi[Maxn],head[Maxn],ans,e,d 阅读全文
posted @ 2013-09-08 23:53 fangguo 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 思路:其实这题是个挺水的动态规划,一开始就能AC,可是不知道错哪了,瞎改瞎交,WA了数十次。AC之后怎么改都是AC,也不知道改了什么地方,郁闷死了~~~难道开始时的测试数据有问题???dp[i][j]表示第i天在第j个地方的最大概率,那么dp[i][j]=max(dp[i][j],dp[i-1][k]+p[k][j]+we[i][weh[j]]);p[k][j]表示从k到j的概率,we[i][j]表示第i个地方出现j天气的概率。#include#include#include#include#include#include#define inf 100000000#define eps 1e- 阅读全文
posted @ 2013-09-08 23:50 fangguo 阅读(353) 评论(8) 推荐(0) 编辑