2018 10 18 T1 艾奇摘蘋果

2021-08-29 07:48:30 字數 1789 閱讀 3620

暫無鏈結

【問題描述】

艾奇在遙遠的美洲大陸有一片蘋果樹森林。

聽上去非常不錯的是,蘋果森林每年收成都還不錯。

艾奇摘蘋果的方式非常有趣,由於蘋果樹太高,她常直接折斷樹枝來獲得一大堆(整棵子樹)的蘋果。

艾奇也不想把蘋果樹破壞的太狠,畢竟蘋果樹也不是只結一年的蘋果。所以她對於一棵樹,至多會折斷一根樹枝。

艾奇不像過去的某魯姓大師,她並沒有那個力氣倒拔蘋果樹,因為一棵樹的根是埋在土裡的。所以她並不能獲得整棵樹的蘋果。

眾所周知,美洲大陸龍捲風賊多。龍捲風既然能摧毀停車場,那麼吹翻一片蘋果森林應該不是什麼難事。所以艾奇養了一些小機械人給艾奇預警龍捲風。

艾奇把這些小機械人放在花上,這樣一來小機械人就能吸收樹的養分工作,但是這也導致了這朵花不能結果。

如果你折斷了一根樹枝,小機械人就會因為沒有養分而狂躁,它們只吃原本和它們屬於同一棵樹上被摘下來的蘋果。如果這些蘋果不夠吃,它們就會把艾奇吃掉。

樹林有點大,艾奇想知道,照她這種收果實的方法,在自己不被吃掉的情況下,至多能收穫多少蘋果呢?

【輸入格式】

輸入檔名為app

le.i

napple.

in。第一行兩個整數n

mn\ m

nm分別表示這片森林的節點樹和樹枝數量(就是邊的數量)。我們預設一棵樹的根就是這棵樹中編號最小的節點。

接下來n

nn個整數。

如果該整數為正,那麼表示這個節點結蘋果的數量。

如果該整數為負,那麼表示這個節點養了乙個小機械人,它被摘下來要吃的

果子數量。

對於一棵樹的根節點,這個節點的權值可以忽略。

接下來m

mm行,每行兩個整數i,j

i,ji,

j表示i

ii和j

jj在樹上有邊相連。

【輸出格式】

輸出檔名為app

le.o

utapple.

out。

一行乙個整數,表示艾奇至多能收穫多少蘋果。

【輸入樣例 1】

詳見a pp

le1.i

napple1

.in

【輸出樣例 1】

詳見a pp

le1.o

utapple1

.out

【資料範圍】

s求一棵樹中的最大子樹,把所有樹的最大子樹加到一起。

**略微卡常

#include

using

namespace std;

const

int m=

1e6+5;

int val[m]

,vis[m]

,head[m]

,nxt[m<<1]

,to[m<<1]

,n,m,cnt,r,f;

long

long ans,sum[m]

,mx;

char c;

void

add(

int f,

int t)

intread()

void

dfs(

int v)

voidin(

)voidac(

)int

main()

7 24校內交流賽 T1 T2

乙個腦洞很大的題,將輸入的所有數異或起來輸出就好了 話說我為什麼這麼喜歡用異或啊 結論題 當某個字串長度恰巧為3 k 1時,從它往下的第3 k 1行恰好只決定於這個字串的左右兩個端點的值 includeusing namespace std inline intread intn,l char a ...

考試T1護花

傳送門 這題的提議似乎有什麼問題,只要約翰選好了要抓那頭牛,他就不會吃草了,站在原地傻等?這題就是貪心,但在用cmp中比較單位時間吃草數量時,要用double型,不然可能會有點一樣。還有就是主要的思路 設x,y是兩頭牛,如果後送y牛損失的花少於後送x牛損失的花 即x.t x.d x.t y.t y....

分塊隨筆T1

時間限制 1 sec 記憶體限制 128 mb 提交 解決 提交 討論版 大家都知道小z的課總是十分快的 鬼知道為什麼 然後我們阿m同學總是在上課時處於神遊狀態亦或是休眠狀態,所以她對小z到底講了什麼是一無所知。然而,小z總是很壞地打斷阿m的休眠狀態,並問她問題。作為阿m的開黑好夥伴,你當然不希望阿...