GDKOI2014模擬 樹的直徑

2021-08-11 18:44:19 字數 570 閱讀 1455

並不想講。

樹的直徑有乙個性質。

現在有兩棵樹,如果把它們隨意連一條邊,會變成一棵樹,新樹的直徑的端點一定是之前兩棵樹的直徑的共4個端點的兩個。

code:

#include

#include

#define fo(i, x, y) for(int i = x; i <= y; i ++)

#define fd(i, x, y) for(int i = x; i >= y; i --)

#define max(a, b) ((a) > (b) ? (a) : (b))

using

namespace

std;

const

int n = 500000;

int n, a[n], tot;

int son[n][2], dep[n];

int f[17][n], ans;

int lca(int x, int y)

int dis(int x, int y)

int main()

}

GDKOI2014 石油儲備計畫

description input output 對於每組資料,輸出乙個整數,表示達到 平衡 狀態所需的最小代價。sample input 2 36 1 5 1 2 1 2 3 2 54 5 4 3 2 1 3 1 1 2 2 2 4 3 2 5 4 sample output 4 4樣例解釋 對於...

GDKOI2014 石油儲備計畫

description input output 對於每組資料,輸出乙個整數,表示達到 平衡 狀態所需的最小代價。sample input 2 36 1 5 1 2 1 2 3 2 54 5 4 3 2 1 3 1 1 2 2 2 4 3 2 5 4 sample output 4 4樣例解釋 對於...

GDKOI2014 石油儲備計畫

description input output 對於每組資料,輸出乙個整數,表示達到 平衡 狀態所需的最小代價。sample input 2 36 1 5 1 2 1 2 3 2 54 5 4 3 2 1 3 1 1 2 2 2 4 3 2 5 4 sample output 4 4樣例解釋 對於...