沒有上司的舞會

2022-05-16 10:31:01 字數 969 閱讀 9850

某大學有n個職員,編號為1~n。他們之間有從屬關係,也就是說他們的關係就像一棵以校長為根的樹,父結點就是子結點的直接上司。現在有個周年慶宴會,宴會每邀請來乙個職員都會增加一定的快樂指數ri,但是呢,如果某個職員的上司來參加舞會了,那麼這個職員就無論如何也不肯來參加舞會了。所以,請你程式設計計算,邀請哪些職員可以使快樂指數最大,求最大的快樂指數。

設 \(dp[i][0/1]\) 表示第i號節點擊不選。

易得轉移方程有:

$ dp[i][0] += max ( dp[soni][1],dp[soni][0] ) \(

\) dp[i][1] += dp[soni][0] $

#include #include #include #include #include #include #include #include #define inf 2139062143

#define max 0x7ffffffffffffff

#define del(a,b) memset(a,b,sizeof(a))

using namespace std;

typedef long long ll;

templateinline void read(t&x)

while(isdigit(c))x*=k;

}const int maxn=6000+5;

int a[maxn];

int dp[maxn][2];

vectorg[maxn];

bool fa[maxn];

int n,root;

void dfs(int u,int fa)

}int main()

for(int i=1;i<=n;i++) if(!fa[i])

dfs(0,0);

printf("%d",max(dp[0][0],dp[0][1]));

return 0;

}

沒有上司的舞會

題目描述 description ural大學有n個職員,編號為1 n。他們有從屬關係,也就是說他們的關係就像一棵以校長為根的樹,父結點就是子結點的直接上司。每個職員有乙個快樂指數。現在有個周年慶宴會,要求與會職員的快樂指數最大。但是,沒有職員願和直接上司一起與會。輸入描述 input descri...

沒有上司的舞會

ural大學有 n 個職員,編號為 1 n 他們有從屬關係,也就是說他們的關係就像一棵以校長為根的樹,父結點就是子結點的直接上司。每個職員有乙個快樂指數。現在有個周年慶宴會,要求與會職員的快樂指數最大。但是,沒有職員願和直接上司一起與會。第一行乙個整數n。1 n 6000 接下來n行,第i 1行表示...

沒有上司的舞會

某大學有n個職員,編號為1 n。他們之間有從屬關係,也就是說他們的關係就像一棵以校長為根的樹,父結點就是子結點的直接上司。現在有個周年慶宴會,宴會每邀請來乙個職員都會增加一定的快樂指數ri,但是呢,如果某個職員的上司來參加舞會了,那麼這個職員就無論如何也不肯來參加舞會了。所以,請你程式設計計算,邀請...