日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[数学最安逸][UVa1638改编][第一类斯特林数+组合数]杆子的排列

發(fā)布時間:2023/11/29 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [数学最安逸][UVa1638改编][第一类斯特林数+组合数]杆子的排列 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

有高為1,2,3,...,n的桿子各一根排成一行。從左邊能看到l根,從右邊能看到r根,求有多少種可能。 (l,r <= 200,n <= 200000)


給出T 組數(shù)據(jù) (T <= 500000)? 對于每一組數(shù)據(jù)輸出可能的個數(shù),為避免寫高精,將答案模 1e9 + 7 (它為質(zhì)數(shù),但似乎沒蛋用)


?關(guān)于 O(TnLR) 或 O(nMAX(L,R)) 預(yù)處理,O (n) 查詢的解法已有,現(xiàn)在我來安利安利汪神的無敵解法,我現(xiàn)在只服汪神!!!

先說答案,答案為s(n-1,l+r-2) * C(l + r - 2,l - 1) (s為第一類斯特林?jǐn)?shù),c為組合數(shù))

證明

圖中畫出的柱子是能被看出的,每根柱子后面一定有比它小的柱子,但這些柱子隨便怎么排都無所謂,所以對于一根柱子來說,設(shè)它和它背后比它低的柱子個數(shù)為k。

那么比它低的柱子有k-1個,排列方式為(k-1)!

設(shè)能被看到的柱子和后面比它低的柱子為一個集合,那么全場共有(l + r - 2) 個集合(忽略最高的柱子)。只要我們找出了這(l + r - 2)個集合,那么就一定能構(gòu)成上圖(每個集合最高的柱子作為這個集合的代表)

那么我們找出這(l+r-2)個不同的集合的方案數(shù)為s(n-1,l+r-2)。為什么是這樣呢?

顯然,對于一個集合而言,如果其他l+r-3個集合不變,那么他就一定會變,因為是找圓排列,它只會變(k-1)! 次(k為此集合大小)。。。

剛好這個集合除了代表元素也只有(k-1)!種排列,所以是正確的。。。(我不知道之前的算不算口胡,汪神說只可意會,是非完美證明)

我們在選出的(l+r-2)個中選出l-1個作為左邊的就好了 因此就乘上組合數(shù)

轉(zhuǎn)載于:https://www.cnblogs.com/dcoi-king/p/5353658.html

總結(jié)

以上是生活随笔為你收集整理的[数学最安逸][UVa1638改编][第一类斯特林数+组合数]杆子的排列的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。