用最樸素的做法,我們要建很多次圖,時間上不允許,所以得想點什麼優化,本弱剛看到也沒什麼頭緒,後來聽說要把操作保留,然後逆序操作,瞬間就折服了
我們先構建一張圖,其中不包括燒掉的點和邊,那麼這就是最後的情況了,之後我們每次都新增被燒的那個點和附屬的邊。原來是去點,現在相當於從最後加點。
#include#includeconst int maxn=400010;
int father[maxn];
bool flag[maxn];
int turn[maxn];
int ans2[maxn];
struct node
edge[maxn];
int head[maxn];
int tot,ans;
void addedge(int from,int to)
int find(int x)
void union(int x,int y)
}int main()
ans2[i]=ans;
}for(int i=0;i<=t;i++)
printf("%d\n",ans2[i]);
} return 0;
}
(Vij)火燒赤壁
描述 曹操平定北方以後,公元208年,率領大軍南下,進攻劉表。他的人馬還沒有到荊州,劉表已經病死。他的兒子劉琮聽到曹軍聲勢浩大,嚇破了膽,先派人求降了。孫權任命周瑜為都督,撥給他三萬水軍,叫他同劉備協力抵抗曹操。隆冬的十一月,天氣突然回暖,颳起了東南風。沒想到東吳船隊離開北岸大約二里距離,前面十條大...
離散化 火燒赤壁
題目描述 曹操平定北方以後,公元208年,率領大軍南下,進攻劉表。他的人馬還沒有到荊州,劉表已經病死。他的兒子劉琮聽到曹軍聲勢浩大,嚇破了膽,先派人求降了。孫權任命周瑜為都督,撥給他三萬水軍,叫他同劉備協力抵抗曹操。隆冬的十一月,天氣突然回暖,颳起了東南風。沒想到東吳船隊離開北岸大約二里距離,前面十...
洛谷 火燒赤壁
曹操平定北方以後,公元208年,率領大軍南下,進攻劉表。他的人馬還沒有到荊州,劉表已經病死。他的兒子劉琮聽到曹軍聲勢浩大,嚇破了膽,先派人求降了。孫權任命周瑜為都督,撥給他三萬水軍,叫他同劉備協力抵抗曹操。隆冬的十一月,天氣突然回暖,颳起了東南風。沒想到東吳船隊離開北岸大約二里距離,前面十條大船突然...