皇宮看守 樹形DP

2022-02-04 07:11:11 字數 1007 閱讀 6429

太平王世子事件後,陸小鳳成了皇上特聘的御前一品侍衛。

皇宮以午門為起點,直到後宮嬪妃們的寢宮,呈一棵樹的形狀;某些宮殿間可以互相望見。大內保衛森嚴,三步一崗,五步一哨,每個宮殿都要有人全天候看守,在不同的宮殿安排看守所需的費用不同。

可是陸小鳳手上的經費不足,無論如何也沒法在每個宮殿都安置留守侍衛。

程式設計任務:幫助陸小鳳布置侍衛,在看守全部宮殿的前提下,使得花費的經費最少。

輸入檔案中資料表示一棵樹,描述如下:

第1行 n,表示樹中結點的數目。

第2行至第n+1行,每行描述每個宮殿結點資訊,依次為:該宮殿結點標號i(0 < i<=n),在該宮殿安置侍衛所需的經費k,該邊的兒子數m,接下來m個數,分別是這個節點的m個兒子的標號r1,r2,...,rm。

對於乙個n(0 < n <= 1500)個結點的樹,結點標號在1到n之間,且標號不重複。

輸出檔案僅包含乙個數,為所求的最少的經費。

61 30 3 2 3 4

2 16 2 5 6

3 5 0

4 4 0

5 11 0

6 5 0

#include #include #define maxn 2005

using namespace std;

int head[maxn],cnt,n,r[maxn],c[maxn],f[maxn][3];

struct fdfdfde[maxn];

void addedge(int x,int y)

void dp(int x,int pre)

f[x][1]+=temp; f[x][2]+=c[x];

}int main()

int root;

for(int i=1;i<=n;++i)

if(!r[i])

dp(root,0);

printf("%d",min(f[root][1],f[root][2]));

return 0;

}

皇宮看守 樹形DP

題意 description 太平王世子事件後,陸小鳳成了皇上特聘的御前一品侍衛。皇宮以午門為起點,直到後宮嬪妃們的寢宮,呈一棵樹的形狀 某些宮殿間可以互相望見。大內保衛森嚴,三步一崗,五步一哨,每個宮殿都要有人全天候看守,在不同的宮殿安排看守所需的費用不同。可是陸小鳳手上的經費不足,無論如何也沒法...

皇宮看守(樹形dp)

description 太平王世子事件後,陸小鳳成了皇上特聘的御前一品侍衛。皇宮以午門為起點,直到後宮嬪妃們的寢宮,呈一棵樹的形狀 某些宮殿間可以互相望見。大內保衛森嚴,三步一崗,五步一哨,每個宮殿都要有人全天候看守,在不同的宮殿安排看守所需的費用不同。可是陸小鳳手上的經費不足,無論如何也沒法在每個...

皇宮看守 樹形DP

time limit 10000ms memory limit 65536k total submit 63 accepted 27 case time limit 1000ms description 太平王世子事件後,陸小鳳成了皇上特聘的御前一品侍衛。皇宮以午門為起點,直到後宮嬪妃們的寢宮,呈一...