A. 小B的棋盤
當$k>=n$時顯然無解,考慮當$k<n$時的做法。
首先可以排個序,然後發現實際上一些對應關係應該是確定的,比如兩維座標都最大的點一定對應兩維都最小的點。
但是還有情況是可能對應空點,但是空點的數量很少,所以可以暴力枚舉最大的k個點的匹配點即可。
B. 小B的夏令營
考慮區間$dp$,$dp[i][l][r]$表示當前第$i$行,前$i$行全部聯通並且第i行剩餘$[l,r]$的概率,轉移枚舉上一行剩餘的部分再乘上概率就行了。概率就是$p^i*(1-p)^{k-i}*C(k,i)$的形式。
然後看上去這個東西就挺能優化的,套幾層前綴和上去就可以優化到$O(nm)$了。
C. 小B的圖
看到這種兩種權值,求生成樹最小值的題應該就是LCT了。
一個自然地想法就是先用某一種權值求出來一棵生成樹,然後嘗試用另一種權值去更新。
實際上就是求出來在什麼時刻負權邊會更加有用。然後對於每一個求出來的時刻求出來當前時刻的權值,然後詢問直接二分在哪個時刻就行了。