1639 綁鞋帶
基準時間限制:1 秒 空間限制:131072 kb 分值: 20 難度:3級演算法題 收藏 關注
有n根鞋帶混在一起,現在重複n次以下操作:隨機抽出兩個鞋帶頭,把它們綁在一起。可以想象,這n次之後將不再有單獨的鞋帶頭,n條鞋帶系成了一些環。那麼有多大概率剛好所有這些鞋帶只形成了乙個環?
input
僅一行,包含乙個整數n (2<=n<=1000)。
output
輸出一行,為剛好成環的概率。
input示例
2output示例
0.666667
題解:是乙個概率計算問題,可以這樣模擬一下過程:第一次隨機取一根鞋帶的一頭,然後可以綁的地方有2(n-1)中,第二次取鞋帶的時候,有2(n-1)種取法了,此時綁鞋帶的時候,只有2(n-2)中選法,因為一頭已經綁上的鞋帶不能選,不然就會提前出現環。以此類推。得出概率:p = (2n*(2n-2)^2(2n-4)^2.....2^2)/2n! = ((2n-1)*(2n-3)*....3*1)/((2n-2)*(2n-4)*....4*2)
注意點:
1.不能直接計算分子和分母,然後坐商。需要將分子和分母每一項當做乙個整體計算,最後求積。
**:
#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;
typedef long long ll;
const int maxn = 1e6;
const int mod = 1e9+7;
const int inf = 1<<30;
const ll llinf = 1e18+999;
int n;
int main( )
{ //freopen("input.txt", "r", stdin);
while(~scanf("%d", &n))
{double ans = 1.0;
for(int i=1; i
51nod1639 組合數學)
題意 中文題誒 思路 組合數學 n根鞋帶要組成乙個環,那麼顯然與連成一根鞋帶之前不成環是衝要條件 假設當前還剩下 i i 1 根鞋帶,要從中選擇兩根鞋帶頭連線後不成環的概率為 pi 不成環的選擇方法數 所有選擇方法數 所有方法數 c 2 i,2 2 i 2 i 1 2 i 2 i 1 成環的方法數 ...
51nod 瞬間移動 組合數學
1627 瞬間移動 基準時間限制 1 秒 空間限制 131072 kb 分值 80 難度 5級演算法題 收藏 關注 有乙個無限大的矩形,初始時你在左上角 即第一行第一列 每次你都可以選擇乙個右下方格仔,並瞬移過去 如從下圖中的紅色格仔能直接瞬移到藍色格仔 求到第n行第m列的格仔有幾種方案,答案對10...
51nod 1627 瞬間移動 組合數
有乙個無限大的矩形,初始時你在左上角 即第一行第一列 每次你都可以選擇乙個右下方格仔,並瞬移過去 如從下圖中的紅色格仔能直接瞬移到藍色格仔 求到第n行第m列的格仔有幾種方案,答案對1000000007取模。單組測試資料。兩個整數n,m 2 n,m 100000 output 乙個整數表示答案。inp...