这道题的几个最优解什么鬼

P3366 【模板】最小生成树

这是第一名Bilj的 ```cpp #include <cstdio> #include <algorithm> #define M 200001 using namespace std; int n,m,c=0,s=0,uf[M]; struct edge { int x,y,z; }e[M]; bool cmp(edge a,edge b) { return a.z<b.z; } int fi(int k) { if(uf[k]==k) return k; return uf[k]=fi(uf[k]); } int main() { scanf("%d%d",&n,&m); if(n==500&&m==9949) { puts("15864"); return 0; } if(n==5000&&m/10==16449) { puts("92910"); return 0; } if(n==5000&&(m/10)==18638) { puts("81455"); return 0; } if(n==5000&&(m/10)==19861) { puts("77824"); return 0; } for(int i=0;i<n;i++) uf[i]=i; for(int i=0;i<m;i++) scanf("%d%d%d",&e[i].x,&e[i].y,&e[i].z); sort(e,e+m,cmp); for(int i=0;i<m;i++) { if(c==n-1) break; int ex=fi(e[i].x),ey=fi(e[i].y); if(ex!=ey) { s+=e[i].z; uf[ey]=ex; c++; } } if(s) printf("%d",s); else puts("orz"); return 0; } ```
by kjhhjki @ 2019-10-20 11:01:05


这是第三名 落花凋零 的 ```cpp #include <cstdio> #include <algorithm> #define M 200001 using namespace std; int n,m,c=0,s=0,uf[M]; struct edge { int x,y,z; }e[M]; bool cmp(edge a,edge b) { return a.z<b.z; } int fi(int k) { if(uf[k]==k) return k; return uf[k]=fi(uf[k]); } int main() { scanf("%d%d",&n,&m); if(n==500&&m==9949) { puts("15864"); return 0; } if(n==5000&&m/10==16449) { puts("92910"); return 0; } if(n==5000&&(m/10)==18638) { puts("81455"); return 0; } if(n==5000&&(m/10)==19861) { puts("77824"); return 0; } for(int i=0;i<n;i++) uf[i]=i; for(int i=0;i<m;i++) scanf("%d%d%d",&e[i].x,&e[i].y,&e[i].z); sort(e,e+m,cmp); for(int i=0;i<m;i++) { if(c==n-1) break; int ex=fi(e[i].x),ey=fi(e[i].y); if(ex!=ey) { s+=e[i].z; uf[ey]=ex; c++; } } if(s) printf("%d",s); else puts("orz"); return 0; } ```
by kjhhjki @ 2019-10-20 11:01:44


~~青梅竹马,心有灵犀,两情相悦,山盟海誓~~(
by Windowsredstone @ 2019-10-20 11:04:08


这打表太强了 ~~可能他们两个掌握了尖端科技,进行记忆传输~~ (逃
by Belarus @ 2019-10-20 11:04:13


~~脑控打表~~
by _H1kar1 @ 2019-10-20 11:32:53


整个经过大致是这样的,大概一年前我自己把这题AC了,然后那个时候最优解几乎都是打表,因此我也给自己的代码加上了表又交了一发 最近重温最小生成树,因此我把以前的代码又重新交了一发,但此时以前那些打表代码已经被管理员清掉了,所以打表代码只剩下我那新交的一个了 ( 把表重新交上去算是我的责任,如果我在重交前发现以前的打表代码已被清掉的话也不会这样了 ) 至于另外几位我就不知道是什么情况了,可能是看我的代码的吧,抄表的同时还把我写的那么辣鸡的Kruskal也抄了,我也很无奈啊 = = 作为表的不当传播者表示由衷的歉意 QAQ
by Bilj @ 2019-10-20 11:35:37


|