BZOJ 1864 Zjoi2006 三色二叉樹

2022-04-30 06:18:07 字數 486 閱讀 2222

bzoj_1864_[zjoi2006]三色二叉樹_樹形dp

題意:

分析:遞迴建樹,然後dp,從子節點轉移。

注意到紅色和藍色沒有區別,因為我們可以將紅藍互換而方案是相同的。這樣的話我們只需要知道當前節點是否為綠色即可。

**:

#include #include #include using namespace std;

#define n 500050

int lson[n],rson[n],cnt,n;

int f[n][2],g[n][2],h[n][2];

void build(int x)

}void dfs(int x)

dfs(u);

if(v)

else

}int main()

bzoj1864 Zjoi2006 三色二叉樹

傳送門 大力建出樹後大力dp 設f i j 表示以i為根節點,根節點顏色為j是的最優解。每次列舉當前結點節點顏色和兒子顏色,時間複雜度o n 27 uses math var a,b array 0.500005,1.3 of longint c array 0.500005 of longint ...

BZOJ1864 Zjoi2006 三色二叉樹

標籤 樹形dp description input 僅有一行,不超過500000個字元,表示乙個二叉樹序列。output 輸出檔案也只有一行,包含兩個數,依次表示最多和最少有多少個點能夠被染成綠色。sample input 1122002010 sample output 5 2題意 給定一棵二叉樹...

bzoj 1864 Zjoi2006 三色二叉樹

description input 僅有一行,不超過500000個字元,表示乙個二叉樹序列。output 輸出檔案也只有一行,包含兩個數,依次表示最多和最少有多少個點能夠被染成綠色。sample input 1122002010 sample output 5 2 hint source day1 ...