Otetaan luvut ykkösestä sataan ja sekoitetaan ne (eli otetaan satunnainen permutaatio). Millä todennäköisyydellä tästä löytyy vierekkäin kaksi lukua, joilla on sama määrä tekijöitä sekä ne ovat yhtäsuuret modulo 12?
Esim. 13 ja 37 ovat tällaiset luvut. Molemmilla 2 tekijää, koska ovat alkulukuja ja ovat 1 mod 12.
Toinen esimerkki 55 ja 91. Ovat 7 mod 12 ja tekijöitä 4.
Esim. 13 ja 37 ovat tällaiset luvut. Molemmilla 2 tekijää, koska ovat alkulukuja ja ovat 1 mod 12.
Toinen esimerkki 55 ja 91. Ovat 7 mod 12 ja tekijöitä 4.
Vastaukset 22
Vanhimmat
Lukujen vapaa sekoittuminen johtaa epäpuhtaisiin lukuihin.
Kuka niitä lukuja oekein tekköö? Ja minkätähen voepi olla montahhii tekijöö? Eikö yks riitä?
-kuka loi maailman, opettaja kysyi
-en minä ainakaan, Pikku-Kalle vastasi
Tee ensin taulukko kaikista mahdollisista pareista.
1: -
2: -
3:
.
.
.
50:
Usealla 10 milj näytteellä tulee keskiarvoksi n. 95,28 %.
Pythonin Randomin sample on supernopea Pypyllä.
Oikea tn onkin 95,37. Laskettu kahdella 100 milj näytteellä.
Lajittelu kadotti "suurimman" (viimeisen) parin (35,95), jossa modulo 12 on 11 ja määrä 4.
Tuossa on lista molempiin suuntiin pariutettavista luvuista (a,b):
[[5, 17, 29, 41, 53, 89],
[7, 19, 31, 43, 67, 79],
[10, 22, 34, 46, 58, 82, 94],
[11, 23, 47, 59, 71, 83],
[13, 37, 61, 73, 97],
[14, 26, 38, 62, 74, 86],
[15, 27, 39, 51, 87],
[20, 32, 44, 68, 92],
[21, 33, 57, 69, 93],
[25, 49],
[28, 52, 76],
[30, 42, 54, 66, 78],
[35, 95],
[40, 88],
[50, 98],
[55, 91],
[60, 72, 84, 96],
[63, 75, 99],
[65, 77]]
Noista on helppo muodostaa 100x100 kokoinen totuustaulukko. Indeksinä 100*(a-1)+(b-1). Sample voidaan muodostaa sitten suoraan luvuista 0...99.
No jo nyt on mielenkiintoista (?). Ja ihan koneella laskettu. Eipä siinä paljon matematiikkaa tarvittu.
Joo 0,9537 on oikein. Seuraava desimaali 2.
Kokeile itse. Et pysty, koksa et osaa edes matematiikan perusteita. Etkä tule koskaan oppimaan mitään.
Oletetaan, että listan luvut ovat oikeita. Helppo tarkistaa.
Ensimmäisen rivin listan luvut voidaan kaikki korvata luvulla yksi, toisen rivin luvut luvulla 2, jne. Viimeiset luvulla 19.
Loput listoissa esiintymättömät luvut voidaan korvata vaikka luvulla 20 (tai 0).
Tehtävän ratkaisemin puhtaasti matemaattisesti helpottuu oleellisesti. (Ohjelmallisestikin riittää todeta vain pelkkä ensimmäinen yhtäsuuruus.)
Samanpituiset lukulistat käyttäytyvät matemaattisesti samalla tavalla.
Joku matemaatikko löytänee jostain sopivat likiarvokaavat. Oikean vastauksen tietäminen helpottaa.
1. Jos sadan kortin pakassa on kaksi punaista korttia ja loput ovat erivärisä, millä todennäköisyydellä kaksi punaista korttia ei ole missään vierekkäin?
2. Jos sadan kortin pakassa on kolme punaista korttia ja loput ovat erivärisiä, millä todennäköisyydellä kaksi punaista korttia ei ole missään vierekkäin?
3. Jos sadan kortin pakassa on kaksi punaista korttia, kaksi sinistä korttia ja loput ovat erivärisiä, millä todennäköisyydellä kaksi punaista korttia tai kaksi sinistä korttia ei ole missään vierekkäin?
Keksikää tarvittavat kaavat aluksi vaikka kymmenen kortin pakalle. "Vierekkäisyys" ei taida olla matemaattisesti ihan helppo juttu isoissa pakoissa. Kaavat pitenevät lähes äärettömiksi.
Ohjemallinen ratkaisu nopeutui ehkä prosentilla. Suurin osa ajasta kuluu satunnaisen samplen tekemiseen. Esilaskettu totuustaulukko on nopea. Säästönä tuli yksi kertolasku vähemmän. Keskimäärin pari löytyy jo 33 ekan luvun joukosta, joten haku kannattaisi tehdä samplen muodostuksen yhteydessä.
Satunnaisten permutaatioiden määrä tietysti pieneni 2*10**30 osaan. Näissä laskuissa 30 numeroa luvussa vähemmän ei tunnu missään.
Tehtävä tietysti muuttui järkeväksi korttipakkatehtäväksi ja siihen löytyy varmasti jotain osaratkaisuja pienillä pakoilla oeis.org:sta.
Jos 10 kortin pakassa on 3 ykköstä, 2 kakkosta ja 2 kolmosta ja loput on tyhjiä, niin tn on n. 68,4 %.
Annetussa tehtävässä kannattaa poimia kortteja pakan kopiosta suoraan random():lla.
b = bl.pop(int(le*random()))
Nopeus lähes kaksinkertaistui täydelliseen sampleen verrattuna..
Mikä on tn, että tavallisesta 52-kortin pakasta (4*13) löytyy vähintään yksi vierekkäin oleva risti-, ruutu- tai herttakorttien pari? (Ei siis pataa.)
Laskekaa yliopistoissa opetetuilla tai internetistä löytyvillä kaavoilla. Tai kehittäkää kaavat ihan itse. Onnistuuko?
1. 2 punaista korttia voi olla vierekkäin 99 eri paikassa ja ne voivat olla kahdessa eri järjestyksessä eli tapoja on 198. Muut kortit voivat olla silloin 98! eri järjestyksessä. Kaikkiaan kortit voivat olla 100! eri järjestyksessä. Kysytty tn = 1 - (198*98!)/100! =
1- 198//9900 = 9702/9900 = 49/50.
Mä sain risti, ruutu tai hertalle (vai pitäisikö sanoa "väripari paitsi pata" :D)
15965317385996811838580219 / 15965695763538331202154000
= 0,9999763005917736
Kyse on numeroparista. Ihan kuten aloitustehtävässä. Lasketaan ihan samalla tavalla.
Oikea vastaus on n. 78,51 %.
Mut eihän kahta samaa maata ole kahta samaa numeroa.
Aloitetaanko taas keskustelu suomen kielen perusteista?
Käännät aina lauseet virheellisesti jollekin muulle kielelle. Et edes huomaa epäloogisuuttasi tulkinnoissasi tai et välitä niistä. Keksit sitten täysin perättömiä väittämiä ja aloitat väittelyn. Miksi?
"Mikä on tn, että tavallisesta 52-kortin pakasta (4*13) löytyy vähintään yksi vierekkäin oleva risti-, ruutu- tai herttakorttien pari? (Ei siis pataa.)"
Miten tuossa on kyse numeroparista?
Vielä tehtävä 2. punaisia kortteja nyt 3.
P(2 pun. ei missään vierekkäin) = 1 - P(2 pun. vierekkäin) = 1 -P(3 pun. vierekkäin) - P(vain 2 pun. vierekkäin) =1 - P(2) - P(3). C (n,m) = n! /(m! (n-m)!)
P(3) = (3! * 98! * 97!) / 100! = 1/1650
P(2) = (2*C(3,2)*2! * 97*97! + 2! * C(3,2) * 97*97 * 96* 96! ) / 100! = 97/1650
Kysytty tn n= 1 - 49/825 = 776/825 = 0,940605...
p.o. 0,94060606....
Eipä matematiikkaa osaamaton ikinä laskisi tuota tehtävää koneella(kaan).
Tein laskimen tällaisille tehtäville: https://jsfiddle.net/mx83u47s/
Ei taida tuota jsfiddleä enää vaan nykyään koko ruudun tilaan vaikka lisäisi embedded/result perään.
Muuten, tämän tehtävänhän voi myös lausua seuraavasti: Kuinka monta Hamiltonin polkua on verkolla, joka on komplementti verkosta K_{n_1}⊔K_{n_2}⊔...⊔K_{n_m}, missä K_n on n:n solmun täysi verkko ja ⊔ tarkoittaa pistevierasta yhdistetettä (solmut ovat siis pistevieras yhdiste osien solmuista ja kaaria ei osien välille laiteta ollenkaan). Luvut n_1, n_2,..., n_m ovat lukumäärät kuinka monta lukua (korttia) luokissa on. Ja luokalla tässä tarkoitetaan niiden lukujen joukkoa, jotka eivät saa mennä vierekkäin. Aloituksen esimerkissä yksi luokka esim. [5, 17, 29, 41, 53, 89].