peyo написа:Гост написа:1. В клас от 30 ученици има 10 отличници. Класът е разделен по случаен начин на две равни части. Каква е вероятността във всяка част от класа да има по 5 отличници?
Това разбира се, се решава с Hypergeometric distribution:
In [101]: from scipy.stats import hypergeom
In [102]: hypergeom.pmf(5, 30, 10, 15)
Out[102]: np.float64(0.3001499250374812)
Хмм... Това ми изглежда малко много, но може би е вярно. Единствения начин да знаем със сигурност е да направим симулация.
ЧНГ!!!
Ок. Да се опитаме да решим задачата и по метода на преброяването, защото е най-забавно.
Имаме 10 отличници и всеки може да попадне вв една от двете групи. Хващаме един по един всеки отличник го слагаме в една група с неговата си вероятност. Първите 5 ще искаме да попаднат в първа група, а вторите 5 във втора група. Тогава вероятността първия да попадне в първа група е :
15/30
И втория да попадне в 1-ва група е:
(15/30)*(14/29)
И така първите 5:
(15/30)*(14/29)*(13/28)*(12/27)*(11/26)
Шестия добавяме малко по различно:
(15/30)*(14/29)*(13/28)*(12/27)*(11/26)*(
15/25)
И така 10-те стават:
In [148]: (15/30)*(14/29)*(13/28)*(12/27)*(11/26)*(15/25)*(14/24)*(13/23)*(12/22)*(11/21)
Out[148]:
0.0011910711311011158И това е вероятността за едно подреждане. Остава да преброим колко общо различни равновероятни подреждания имаме:
10 отличника са $10!$. Но всяка група от 5 са неразличини значи:
[tex]\frac{10!}{5! \cdot 5!}[/tex]
In [149]: math.factorial(10)/(math.factorial(5)*math.factorial(5))
Out[149]: 252.0
Хм... Само 252 различни подреждания. Аз си мислех, че ще са много. да видим крайния резултат:
In [150]: 0.0011910711311011158 * 252
Out[150]: 0.30014992503748117
Това прилича точно на стойността от Hypergeometricа, значи може и да е вярно.