juan_gandhi: (Default)
Тут участник [personal profile] green_fr  задал задачку:

Есть колода карт со, скажем, тремя тузами. Мы вытаскиваем карту за картой; какова средняя ожидаемая длина последовательности до туза.

Я сначала было, забыв комбинаторику, понёс чушь. Потом понял, что это же чёрные и белые шары в коробке. Вот и программа тут внизу.

Но смешно другое. Иду я сегодня из магазина и вычисляю. И тут бац - на тротуаре и на дороге рядом разбросаны карты. Несколько лицами (или как их там) кверху. Ни одного туза. А одна карта рубашкой кверху, под машиной лежит. Перевернул. Туз червей.

 


import scala.language.implicitConversions
import scala.language.postfixOps

@main
def main(): Unit =
def fact(n: Int): BigInt = if (n < 2) 1 else (n * fact(n - 1))

class Cards(nCards: Int, nAces: Int):
val n = nCards-nAces
def `probability of first ace at`(k: Int) = {
val `probability of k-1 non-aces` =
(fact(n) * fact(nCards - k + 1)).toDouble / (fact(n-k+1) * fact(nCards)).toDouble
val `probability of k-th ace` = nAces.toDouble / (nCards-k) `probability of k-1 non-aces` * `probability of k-th ace`
} def `expected run` = (1 to n).map(i => i*`probability of first ace at`(i)).sum println(Cards(52,4).`expected run`)
>10.933092006033183

juan_gandhi: (Default)
Check out this.

In short, a guy builds a car that feeds wheels rotation to a propeller, which pulls the car ahead, and it goes faster, etc.
 

Watch it, and if you are a physicist, explain this shit to me.

 

 P.S. понял, кажется.

 

Profile

juan_gandhi: (Default)
Juan-Carlos Gandhi

May 2025

S M T W T F S
    1 2 3
456 7 8 9 10
11 121314151617
18192021222324
25262728293031

Syndicate

RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated May. 15th, 2025 02:46 pm
Powered by Dreamwidth Studios