bzoj1430 小猴打架 prufer序列

2022-05-01 20:21:10 字數 469 閱讀 6064

注釋:略。

想法

我們發現打架的情況就是一棵樹。

我們只需要把確定樹的形態然後乘以$(n-1)!$表示生成這棵樹時邊的順序。

一共$n$個節點我們發現數的形態一共有$n^$種。

所以答案就是$n^\cdot (n-1)!$。

code:

#include #include #include #include #define mod 9999991 

using namespace std;

typedef long long ll;

ll qpow(ll x,ll y)

return ans;

}int main()

小結:$prufer$序列還是很好理解的。

bzoj1430 小猴打架

description 一開始森林裡面有n只互不相識的小猴子,它們經常打架,但打架的雙方都必須不是好朋友。每次打完架後,打架的雙方以及它們的好朋友就會互相認識,成為好朋友。經過n 1次打架之後,整個森林的小猴都會成為好朋友。現在的問題是,總共有多少種不同的打架過程。比如當n 3時,就有六種不同的打架...

BZOJ1430 小猴打架

標籤 prufer序列 題目傳送門 description 一開始森林裡面有n只互不相識的小猴子,它們經常打架,但打架的雙方都必須不是好朋友。每次打完架後,打架的雙方以及它們的好朋友就會互相認識,成為好朋友。經過n 1次打架之後,整個森林的小猴都會成為好朋友。現在的問題是,總共有多少種不同的打架過程...

BZOJ 1430 小猴打架 prufer編碼

prufer編碼和無根樹的轉化問題 樹化prufer 在葉子節點中尋找編號最小的節點,將與之相連的父節點加入prufer佇列裡,然後刪去該葉子節點,直至圖中只剩下2個節點,於是prufer數列共有n 2位 於是對於乙個完全圖求生成樹的個數,他的prufer序列裡有 n 2 位,每一位均可取1 n,於...