A. 多邊形
容易發現當$k>3$時無解。
然後容易證明當$k=3$時,只有$m=3$纔是有解的。
然後直接做不好做,考慮欽定然後容斥出合法方案。
對於$k=3$,枚舉一個點,然後計算另一個的方案數。
其他情況類似,欽定滿足條件的角,然後容斥。
然後對於每一個$O(n)$的式子用組合恆等式大力化簡就可以做到$O(1)$了。
B. 仙人掌
考慮每個點周圍的點的權值種類不會超過根號種。
所以考慮維護每個點周圍的點的權值,首先對於兒子的權值用數據結構維護,每次暴力對每個權值重構。
對於父親的貢獻,可以簡單得到父親當前的權值,然後暴力修改維護即可。
C. 多項式
假如前n個變量的總和已經確定爲$X$,那麼後面的貢獻就是組合數,展開可以得到一個$m-n$次多項式。
所以求出來前面總和的k次方的和就可以將這些東西代入多項式得到答案。
考慮怎麼求這個東西,直接倍增即可。