ICSP
ICSP: Zadanie dla
Triviala żeby sobie pomyślał

Poparcie w wiosce wynosi 100. Atakujemy 4 szlachcicami. Każdy szlachcic może zbić poparcie w
granicach 20 − 35 i może zbić poparcie tylko o liczbę naturalną. Oblicz prawdopodobieństwo że
wioska zostanie przejęta (poparcie spadnie do 0 lub niżej) po 4 atakach.
16 lip 13:12
Trivial:
Atakujemy cztery razy czterema szlachcicami?
16 lip 13:18
ICSP: nie. W każdym ataku jest jeden szlachcic. Czyli łącznie w 4 atakach będzie 4 szlachciców
16 lip 13:19
16 lip 13:22
Trivial: to by było za proste.
16 lip 13:27
ICSP: Właśnie nie umiem tego zrobić:(
16 lip 15:28
ICSP: Oczywiście to nie jest zadanie tylko dla Triviala. Każdy może próbować

Ja nie mam pomysłu
nawet jak to zrobić
16 lip 15:45
TPB: Rozważmy zbiór: Ω ={(x
1,x
2,x
3,x
4); x
i∊{20,21,22,23,...,35} dla i = 1,2,3,4}
Niech A oznacza zd. polegające na tym, że wylosowana suma będzie większa bądź równa 100. Gołym
| | 1 | |
okiem widać, że P(A)> |
| , więc rozwiążemy zadanie przez zdarzenie przeciwne A'. |
| | 2 | |
Teraz moc zbioru A' liczymy na Jana:
...
Hmmm za dużo liczenia. Proponuję ICSP, abyś wyznaczył przybliżoną wartość doświadczalnie.
Przejmij kilka wiosek n>20 i zobacz jakie jest prawdopodobieństwo. Albo weź 16 karteczek z
liczbami od 20−35 i heja 100 prób i masz szukane prawdopodobieństwo.
16 lip 16:10
Trivial:
ICSP, a masz do tego odpowiedź chociaż?
16 lip 16:15
ICSP: Nie. Zadanie dzisiaj wymyśliłem
16 lip 16:28
TPB: Co za pomysły Cię na chodzą podczas gry w plemiona. Wykonałem przed chwilą 25 symulowanych
napadów na wioskę i w 22 przypadkach wystarczyły 4 ataki. A więc prawdopodobieństwo to w
przybliżeniu 0,88. Trzeba wykonać więcej losowań, albo robić zadanie po janowsku tak jak
mówiłem wyżej.
Podejrzewam, ze prawdopodobieństwo udanego ataku 4 szlachcicami wynosi gdzieś 85−90%
16 lip 16:40
TPB: Aha musisz uwzględnić odpowiednią synchronizację ataków! czyli, ze ataki będą jeden za drugim,
bo nie pamiętam jak szybko wioska odzyskuje poparcie.
16 lip 16:51
Trivial:
Mam pewien pomysł na rozwiązanie, ale wymaga człowieka−kalkulatora, albo użycia komputera.

Jako, że każde
n może przyjmować wartość między 20 i 35 i przy zsumowaniu czterech takich
n−ów możemy uzyskać wartości
s z przedziału [80, 140]. Jeżeli
s ≥ 100 to
założenia zadania spełnione. Każda liczba
s ma pewną liczbę możliwości jej uzyskania.
Zdefiniujmy funkcję
w, która będzie liczyć ile jest takich możliwości.
| | ⎧ | 0, jeżeli s < n lub z = 0 | |
| w(s, n, z) = | ⎨ | 1, jeżeli s = n i z ≠ 0 |
|
| | ⎩ | 35∑i=20 w(s−i, i, z−1) | |
Gdzie:
s − suma,
n − maksymalna możliwa do użycia liczba,
z − liczba pozostałych możliwych zagłębień rekurencji.
Teraz, prawdopodobieństwo wynosi sumę możliwości uzyskania wyniku sprzyjającego (s≥100) przez
sumę wszystkich możliwości, czyli:
| | 140∑i=100 w(i, 35, 4) | |
P = |
| . |
| | 140∑i=80 w(i, 35, 4) | |
Jeżeli komuś chce się bawić, to może sobie te sumy jakoś uprościć, aby metoda była
wydajniejsza.
Wynik: P ≈ 0.77895
Dla zainteresowanych zamieszczam kod źródłowy autoit:
http://pastebin.com/fN1vn5P1
Uwaga:
ALGORTYM JEST BARDZO NIEWYDAJNY!.
16 lip 17:27
Trivial:
Ah, mam błąd w funkcji w...
Prawidłowy wynik to:
P ≈ 86.70%
16 lip 19:50