miku
這題目很water
只要按照題意模擬就行了,資料似乎沒有重邊,那麼對於加入每一條邊的時候,如果兩端點沒聯通,那麼連上,反之
先連上,形成乙個環,去點環上最大的邊
資料範圍不大對
#include#include#include#include#includeusing namespace std;
int head[3000001];
int x,y,z;
int n,m;
int p;
int vis[6000001];
int re[6000001];
struct bed[6000001];
void add(int f,int to,int v)
int fa[400001];
int find(int x)
int cnt;
int f;
int ans;
int res;
void dfs(int now,int aim,int maxx,int la)
for(int i=head[now];i;i=ed[i].ne) }}
void work(int x,int y,int z)else
} if(cnt!=n-1)else
}int main()
return 0;
}
P1340 獸徑管理
約翰農場的牛群希望能夠在 n 個 1 n 200 草地之間任意移動。草地的編號由 1到 n。草地之間有樹林隔開。牛群希望能夠選擇草地間的路徑,使牛群能夠從任一 片草地移動到任一片其它草地。牛群可在路徑上雙向通行。牛群並不能創造路徑,但是他們會保有及利用已經發現的野獸所走出來的路徑 以 下簡稱獸徑 每...
洛谷P1340 獸徑管理
約翰農場的牛群希望能夠在 n 個 1 n 200 草地之間任意移動。草地的編號由 1到 n。草地之間有樹林隔開。牛群希望能夠選擇草地間的路徑,使牛群能夠從任一 片草地移動到任一片其它草地。牛群可在路徑上雙向通行。牛群並不能創造路徑,但是他們會保有及利用已經發現的野獸所走出來的路徑 以 下簡稱獸徑 每...
luogu P1340 獸徑管理
這是乙個最小生成樹,不過唯一的不同是這棵最小生成樹是動態加邊的,所以由此衍生了各種奇怪做法。先說我的做法,我的做法很暴力,就是僅排序一遍,然後同時執行m個kruskal,總的時間複雜度應該是m 2,卡時間過了。總之很裸很暴力。然後orz一下大神的做法 1 插入排序 kruskal 2 逆序krusk...