期望 組合數學

2021-09-22 10:22:15 字數 994 閱讀 8131

題目大意:

思路:求出所有以第i個數為最小值的方案數。

首先排個序:

第1個數為最小值的方案數為c(n-1, k-1)。第2個數為最小值的方案數為c(n-2, k-1)。

第i個數為最小值的方案數為c(n-i, k-1),因為第i個最小了,那麼比第i個數小的數就不能再出現了。

所以就是把所有的a[i]*c(n-i, k-1)求出來再除c(n, k)。

因為結果是*c(n, k)那麼就是求所有的a[i]*c(n-i, k-1)。

#include

#define ll long long

using

namespace std;

#define ll long long

const

int mod=

1000000007

;const

int maxn=

1005

;int fac[maxn]

,facinv[maxn]

;long

long

quickmul

(int a,

int b)

long

longc(

int n,

int m)

void

init()

int a[

1005];

intmain()

sort

(a, a+n)

;for

(int i=

0;i1;i++

)printf

("%lld\n"

,ans);}

}

B Bobby s Bet(期望 組合數)

題目 題意 搖色子遊戲,色子有s面,每一面的數分別是1 s,在y回合裡面是否至少有x回合搖出來的數大於等於r,如果是的話,那我贏w塊錢,否則輸一塊錢,問 我是否能贏錢,能的話出去yes,否則輸出no。題解 算出我總共贏的概率,然後乘以w,這是期望,然後看一下是否比1大就行。算總共贏的概率 首先y回合...

組合數學 求組合數

對於求組合數,要根據所給資料範圍來選擇合適的演算法 這道題中所給的資料範圍適合用打表的方法直接暴力求解 先用4e6的複雜度預處理出所有的情況,再用1e4的複雜度完成詢問即可 include using namespace std const int n 2010 const int mod 1e9 ...

數學 組合數學

mod must be a prime const int mod 1e9 7 namespace combinatory ll inv ll x ll fac maxn invfac maxn void initc int n ll a ll n,ll m ll c ll n,ll m ll d ...