題目鏈結
題解:圖為乙個基環樹。
dfs找到環,對於環上的每乙個點u, 確定與它連線的具有最小美觀度的邊的長度w, 把這個w值更新到與它連線的其他非環上點(minval陣列),則u和與它連線的其他非環上點的答案即為所有邊長度只和減去minval[i]。
code:
1 #include 2 # define ll longlong
3using
namespace
std;45
const
int maxn=1000000+10;6
const
int inf=0x7fffffff;7
struct
edgee[maxn<<1
];10
inthead[maxn];
11int
en;12
13int
n;14
intincycle[maxn];
15int
instack[maxn];
16 stackstk;
17bool
hasfind;
18int
minval[maxn];
1920
21void add(int
from, int to, int w, int
p)29
30void dfs(int u, int
pre)
39stk.pop();
40 instack[u]=0
;41 incycle[u]=1
;42 hasfind=true;43
return;44
}45 instack[u]=1;46
stk.push(u);
47for(int i=head[u];i!=-1;i=e[i].next)
52stk.pop();
53 instack[u]=0;54
}5556void setvalue(int u, int
val)63}
64}6566
intmain()
78 hasfind=false
;79 dfs(1,0
);80
81for(int i=1;i<=n;++i)92}
93}94setvalue(i,minw);95}
96}9798
for(int i=1;i<=n;++i)
101return0;
102 }
Ryoku 的新年歡樂賽
目錄洛谷 6034 ryoku 與最初之人筆記 洛谷 6035 ryoku 的逆序對 洛谷 6036 ryoku 愛學習 220菜雞苟且偷生進入前三十 有乙個 n 個點 n 條邊的無向連通圖,每條邊有長度和美觀度 美觀度各不相同 若從點 x 出發,每次選擇美觀度最大的一條邊走,如果沒有未走過的點就瞬...
洛谷 P6033 合併果子 加強版
p6033 合併果子 加強版 題目背景 本題除 資料範圍與約定 外與 p1090 完 全 一 致。題目描述 在乙個果園裡,多多已經將所有的果子打了下來,而且按果子的不同種類分成了不同的堆。多多決定把所有的果子合成一堆。每一次合併,多多可以把兩堆果子合併到一起,消耗的體力等於兩堆果子的重量之和。可以看...
p 與 p 的區別
p 與 p 的區別 1.int p 2 表示乙個指向一維整型陣列的指標 想想乙個簡單的指標,int q a int a 對於int p 2 a int a 2 只是對 q 的乙個擴充套件,由一維變成了二維。從指標指向的的物件就可以看出。int p 指向陣列,p 指向基本型別 不包括陣列 所以,我們可...