随笔分类 - Kruskal
摘要:本题看似很难,实际上思路非常简单——如果你想通了。 首先有一个问题:图中有几个点?大部分的人会回答$n$个点。错了,有$n+1$个。 多出来的那个点在哪?关键在于你要理解每一个决策的意义。实际上,多出来的那个点是地下的天然矿泉水。当我们打井时,我们实际上是在往地下连边。理解了这一点,代码就没有任何难
阅读全文
摘要:【题意】 平面上有$n(n using namespace std; const int MAXN=1000+10; const int MAXM=MAXN MAXN; int n,q,T,ans=0x3f3f3f3f; int s[10][MAXN]; int c[10]; struct Node
阅读全文
摘要:【题意】 给出一个$n(n using namespace std; const int MAXN=100+10; const int MAXM=10000+10; int n,m; int fa[MAXN]; int maxn,ans=0x3f3f3f3f; struct Node { int u
阅读全文
摘要:由于此题边数比较小,所以可以先给边排个序,然后跑m遍最小生成树,每跑一次删除一条边,找最优解。 防TLE技巧 把边按从小到大的顺序排好,那么只要当前无法联通,那么后面也无法联通 最优解找法 cpp double tmp=(1.0 e[i].w)/(1.0 e[j].w); //因为边是有序的,所以当
阅读全文

浙公网安备 33010602011771号