cd hasło pokera

Transkrypt

cd hasło pokera
Matematyka dyskretna
© Andrzej Łachwa, UJ, 2014
[email protected]
11/15
Zadanie *
Przyjmujemy, że dwa numery rejestracyjne są podobne, gdy reprezen‐
tujące je zbiory znaków są takie same. Ile różnych niepodobnych numerów rejestracyjnych można utworzyć, jeśli pierwszą literą jest K, pozostałe dwie należą do zbioru {R, W, T, A}, a potem występuje pięć cyfr?
Część literową można utworzyć wybierając jedną literę, np. KRR, i można to zrobić na 4 sposoby. Można też wybrać dwie litery ze zbioru 4‐
elementowego (na 6 sposobów). Uwaga: wybór liter R, A pozwala na utworzenie numerów podobnych KRA i KAR. Mamy zatem 4+6 możliwych wyborów. Część numeryczną rozwiążemy jako osobne „pod‐zadanie”.
Pod‐zadanie **
Tworzymy 5‐cyfrowe hasła (z cyfr 0, 1, … 9). Hasła uważamy za podobne, gdy zbiory cyfr, z których się składają są takie same. Np. hasło 27311 jest podobne do hasła 77312, bo ich zbiory cyfr to {1,2,3,7}.
Ile jest niepodobnych haseł? Rozwiązanie pierwsze
10 
5
Klasy haseł o 5 różnych cyfrach można utworzyć na   sposobów. Zbiór haseł o 4 takich samych cyfrach składa się z haseł, w których jedna cyfra powtarza się dwukrotnie. Każdą taką klasę haseł można utworzyć przez wybór cyfry powtarzającej się i wybór trzech innych cyfr, czyli na
9
10     840 sposobów.  3
Każda klasa haseł o 3 cyfrach składa się z haseł, w których albo dwie cyfry występują dwukrotnie, albo jedna cyfra występuje trzykrotnie. Klasę pierwszego rodzaju można wybrać na 10  9  8  720 sposobów, bo najpierw wybieramy cyfrę pojedynczą, potem inną cyfrę podwójną i 9
znowu jeszcze inną cyfrę podwójną. Klasę drugiego rodzaju na 10   2   
sposobów, bo ...
To rozwiązanie nie jest poprawne!
Permutacje
Permutacja zbioru skończonego X to bijekcja z X w X. Zbiór permutacji zbioru oznaczamy przez , a permutacje małymi literami greckimi. Np. rozważ funkcję Funkcja jest bijekcją z zadaną przez poniższą tabelę: w , zatem jest permutacją i . Dla dowolnych permutacji skończonego zbioru X złożenia są permutacjami X, oraz jest permutacją X taką, że jej złożenie z α daje funkcję identycznościową.
Zbiór n‐elementowy ma dokładnie n! permutacji, czyli . Niech  będzie permutacją n‐elementowego zbioru X. Cykl zbioru n‐elementowego X to taka permutacja zbioru X, dla której
, przy dowolnym . Łatwo zauważyć, że jeśli dla pewnego równość, to jest tak dla wszystkich zachodzi powyższa , czyli  jest cyklem na X.
Weźmy bowiem {(x), 2(x), … n‐1(x), n(x)}. Ten zbiór jest równy X, bo jest to (X). Zatem n(x)=x.
Cykl  zbioru X zapisujemy jako wybranego .
dla dowolnie Niech  będzie permutacją n‐elementowego zbioru X. Permutację  nazywamy cyklem k‐elementowym (kn) jeżeli dla pewnego k‐elementowego podzbioru I={i1, i2, … ik} zbioru X zachodzi
( i1)= i2, ( i2)= i3, … ( ik‐1)= ik, ( ik)= i1 oraz (i)= i dla wszystkich iI.
Piszemy wtedy =(i1, i2, … ik), ale również =( i2, i3, … ik, i1 ) …
Permutacja tożsamościowa to cykl 1‐elementowy!
Dwa cykle nazwiemy rozłącznymi jeżeli ich zbiory wskaźników nie mają wspólnych elementów.
Rozważmy Sekwencja , całe , zatem daną przez , , , jest cyklem. , pokrywa ROZKŁAD PERMUTACJI NA ROZŁĄCZNE CYKLE
Dowolną permutację  zbioru X można rozłożyć na rozłączne cykle w sposób następujący: wybierz dowolny element , który nie jest jeszcze w żadnym cyklu, iteruj permutację  otrzymując kolejno: uzyskania aż do , dodaj do rozkładu cykl , jeśli w zbiorze X pozostały jeszcze elementy niepokryte przez żaden cykl, to wróć do pierwszego punktu. Jeśli permutacja  złożona jest z k rozłącznych cykli, to zapisujemy
, gdzie w kolejnych nawiasach są . elementy kolejnych cykli startujące od odpowiednio: Przykład: Rozważmy jeszcze raz permutację : Rozkład  na cykle: , , , , , . , , , , ZADANIE
Ile jest tras wycieczkowych odwiedzających kolejno 3 miejscowości?
Odp: 3!=6
ZADANIE
Na ile sposobów można rozstawić 8 wież na ponumerowanych polach szachownicy 8x8 w taki sposób, by żadne dwie nie znajdowały się w polu wzajemnego rażenia? Rozważamy rozłożenia ośmiu wież, w taki sposób aby w każdej linii i w każdej kolumnie znajdowała się dokładnie jedna wieża. Każde takie rozłożenie jednoznacznie wyznacza bijekcję ze zbioru wierszy . Jest ich zatem . w zbiór kolumn ZADANIE
Ile jest par postaci Dla pary , gdzie , gdy rozważ funkcję ? zdefiniowaną jako:
i wywnioskuj, że .
Pod‐zadanie ** – cd
Zbiór cyfr 5‐cyfrowego hasła może mieć od 5 do 1 elementów. Każdy taki zbiór reprezentuje klasę haseł podobnych. Trzeba więc dodać do siebie liczby podzbiorów pięcio, cztero, trzy, dwu i jednoelementowych:
10 
10 
10 
10 
10 
   252 ,    210 ,    120 ,    45 ,    10
5
4
3
2
1
Szukanych klas jest 252+210+120+45+10 = 637.
Rozwiązanie * w całości Część literową można utworzyć wybierając jedną literę, np. KRR, i można to zrobić na 4 sposoby. Można też wybrać dwie litery ze zbioru 4‐
elementowego. Uwaga: wybór liter R, A pozwala na utworzenie numerów
podobnych KRA i KAR. Mamy zatem 4+6 możliwych wyborów. Część numeryczną reprezentuje co najwyżej 5‐elementowy podzbiór zbioru 10‐elementowego. Mamy zatem  4
10  10  10  10  10 
 

(4+  2  )(  5  +  4  +  3  +  2  +  1  ) = 10(252+210+120+45+10) = 6370
 
 
 
 

W rozwiązaniu pierwszym – wadliwym: wybór grupy haseł 4‐cyfrowych polegał na wyborze cyfry powtarzającej się, a następnie 3 cyfr z pozostałych dziewięciu. Wybór taki można dla konkretnego przypadku oznaczyć jako {8, {7, 6, 5}}, a różnych grup jest 840. W rozwiązaniu poprawnym odpowiedni wybór możemy oznaczyć jako {8, 7, 6, 5}, a różnych grup jest 210. Dlaczego jest ich 4 razy mniej?
Bo grupa {8, 7, 6, 5} składa się z haseł podobnych należących do 4 podgrup postaci:
{8, {7,6,5}}
{7, {8,6,5}}
{6, {8,7,5}}
{5, {8,7,6}} .
A gdyby to były hasła 3‐cyfrowe?
10 
10 
10 



Wtedy dodajemy  3   120 ,  2   45 ,  1   10 , czyli 120+45+10=175.



Dla takich 3‐cyfrowych haseł policzmy ile jest elementów w każdej grupie haseł podobnych? Na przykład niech „345” oznacza grupę haseł złożonych z tych trzech cyfr. Można je uporządkować na 3! sposobów, więc w każdej takiej grupie jest 6 haseł podobnych. Niech „34” oznacza grupę haseł złożonych tylko z dwóch takich cyfr. Należą do niej 334, 343, 433, 443, 434, 344, czyli 6 haseł. Niech „3” oznacza grupę haseł zbudowanych z cyfry 3. Należy do niej tylko jedno hasło. Sprawdzamy: 120 grup po 6 haseł i 45 grup po 6 haseł i 10 grup po 1 haśle
daje łącznie 720+270+10=1000. I to się zgadza, bo 3‐cyfrowych liczb dziesiętnych jest 103.
Przeprowadźmy podobne rozumowanie dla haseł 4‐cyfrowych.
10 
10 
10 
10 




Mamy  4   210 ,  3   120 ,  2   45 ,  1   10 grup cztero, trzy, dwu i 



jednoelementowych, łącznie 210+120+45+10 = 385 grup.
W każdej grupie typu „2345” mamy 4! różnych haseł. W grupie typu „234” – 36 haseł, bo na 3 sposoby wybieramy cyfrę, która wystąpi dwukrotnie (np. będzie to cyfra 4), pozostałe dwie cyfry mogą wystąpić w różnej kolejności (2 przypadki: 23 i 32), a wybraną cyfrę można wstawić do każdej pary cyfr na 6 sposobów (4423, 4243, 4234, 2443, 2434, 2344). W grupie typu „56” będzie 14 haseł, bo 8 haseł z potrojoną cyfrą (5556, 5565, 5655, 6555, 6665, 6656, 6566, 5666) i 6 haseł z podwojonymi cyframi (5566, 5656, 5665, 6655, 6565, 6556). I na koniec w grupie typu „5” będzie jedno hasło postaci 5555. Sprawdzamy: 21024+12036+4514+10=5040+4320+630+10=10000.
I dla haseł 5‐cyfrowych.
W każdej grupie typu „34567” mamy 5! różnych haseł, a grup takich jest
10 
   252 , łącznie mamy tu 252120=30240. 5
10 
Grup typu „3456” jest  4   210 , a w każdej z nich jest 240 haseł, mamy 

bowiem 4!=24 permutacje i dla każdej z nich 10 haseł (np. dla permutacji 6543 mamy hasła 66543, 65643, 65463, 65436, 65543, 65453, 65435, 65443, 65434, 65433). Łącznie jest tu 2102410=50400.
10 
Grup typu „345” jest  3   120 . Każdą taką grupę podzielimy na podgrupę 

z potrojoną cyfrą i podgrupę z dwoma podwojonymi cyframi. W pierwszej
z nich najpierw wybieramy potrojoną cyfrę (3 sposoby wyboru), następnie
ustalamy kolejność dwóch pozostałych (2 sposoby) i wstawiamy cyfrę potrojoną na 10 sposobów. Razem jest w takiej podgrupie 60 haseł.
Przykład: potrojona niech będzie cyfra 5, a wybrana kolejność pozostałych, to 34. Wtedy mamy hasła: 55534, 55354, 55345, 53554, 53545, 53455, 35554, 35545, 35455, 34555.
W drugiej podgrupie mamy 90 haseł. Bierze się to stąd, że najpierw wybieramy cyfrę niepodwojoną (3 sposoby). Dalej, cyfry podwojone mogą
utworzyć ciągi 3355, 3535, 3553, 5335, 5353, 5533. Do każdego z tych ciągów można wstawić cyfrę niepodwojoną na 5 sposobów, np. do ciągu 3355 wstawiamy cyfrę 4: 43355, 34355, 33455, 33545, 33554.
Każda grupa typu „345” ma ostatecznie 150 haseł. Razy 120 grup daje nam 18000 haseł.
10 
Grup typu „34” jest  2   45 , a w każdej z nich jest 30 haseł. Jest tak 

dlatego, że 5‐elementowych łańcuchów z dwóch znaków można zbudować 25 czyli 32, ale dwa z nich nas nie interesują (33333, 44444).
Wreszcie grup typu „3” jest 10.
Sprawdzamy: 30240+210240+120(60+90)+4530+10=30240+50400+18000+1350+10 =
100 000.
GENEROWANIE PERMUTACJI
Algorytm 1: Aby wygenerować n! permutacji wygeneruj wszystkie (n‐1)! permutacji zaczynających się od 1, potem od 2, … i na koniec od n.
1234
1243
1324
1342
1423
1432
2134
2143
2314
2341
2413
2431
3124
3142
…
Algorytm 2: Aby wygenerować n! permutacji wygeneruj wszystkie (n‐1)! permutacji zbioru {2, … n} i umieść 1 na pierwszej pozycji każdej z nich. Powtórz to umieszczając 1 na drugiej pozycji, itd. aż do n‐tej pozycji.
1234
1243
1324
1342
1423
1432
2134
2143
3124
4123
3142
4132
2314
2413
…
Algorytm 3: Aby wygenerować n! permutacji wygeneruj wszystkie (n‐1)! permutacji zbioru {2, … n}. Dla każdej z tych permutacji umieść 1 na kolejnych n możliwych pozycjach.
1234
2134
2314
2341
1324
3124
3214
3241
1342
3142
…
Generowanie podzbiorów
Weźmy n‐elementowy zbiór X={x1, x2 … xn}. Każdemu podzbiorowi YX przyporządkujemy ciąg binarny b0b1 … bn-1 określony następująco:
0 : xi 1  Y
bi  
1 : xi 1  Y
Otrzymujemy wtedy wzajemnie jednoznaczną odpowiedniość pomiędzy elementami P(X) a ciągami binarnymi długości n, czyli liczbami binarnymi z przedziału [0, 2n–1] postaci  bi2i oznaczanymi dalej przez [bn‐1 … b0].
i = 0 … n-1
Ciąg binarny stanowi wygodną reprezentację maszynową podzbioru X, a kolejne liczby binarne określą wszystkie podzbiory zbioru X.
W wielu sytuacjach zależy nam, by kolejny generowany podzbiór niewiele różnił się od poprzedniego. W tym celu zamiast kolejnych liczb binarnych generuje się kolejne liczby tzw. kodu Greya.
Kod ten powstaje w wyniku zastosowania następującej obserwacji:
Jeżeli ciąg C1, C2, … Cm zawiera wszystkie 2k ciągi binarne długości k, przy czym Ci różni się od Ci+1 na dokładnie jednej pozycji (i=1, 2 … m‐1), to ciąg postaci C10, C20, … Cm0, Cm1, Cm‐11, … C11 zawiera wszystkie ciągi binarne długości k+1 oraz każde dwa sąsiednie ciągi binarne różnią się na dokładnie jednej pozycji.
Przykład dla k=4
0000, 1000, 1100, 0100, 0110, 1110, 1010, 0010, 0011, 1011, 1111, 0111, 0101, 1101, 1001, 0001.
ZBIÓR Z POWTÓRZENIAMI (TORBA)
A=B wtw gdy mają te same elementy w tych samych krotnościach.
AB wtw jeśli każdy element z A występuje w B i krotność każdego elementu w A jest nie większa od krotności tego elementu w B.
Niech X zawiera elementy x1, x2, … xn, odpowiednio o krotnościach k1, k2, … kn. Licznością zbioru X nazwiemy sumę krotności, czyli |X| = k1+ k2+ … + kn.
Każdemu podzbiorowi AX odpowiada jednoznacznie ciąg (m1, … mn), gdzie 0 m1 k1, … 0 mn kn.
Wniosek: wszystkich podzbiorów torby X jest (k1+1)∙(k2+1)∙ … ∙(kn+1).
Generowanie podzbiorów można przeprowadzić w sposób podobny do tego opartego na kodzie Greya.
Zliczanie relacji
Ile jest różnych relacji binarnych określonych na skończonym zbiorze X?
Każda taka relacja jest podzbiorem XX. Jest więc tych relacji tyle, co różnych podzbiorów X2, czyli 2nn.
Każdą relację na X można przedstawić w postaci kwadratowej tablicy, a liczba relacji to liczba możliwych układów jedynek w takiej tablicy.
A jeśli chcielibyśmy policzyć tylko relacje zwrotne? Każda relacja zwrotna ma jedynki na przekątnej, w pozostałych miejscach mogą być zera lub jedynki. Tych pozostałych miejsc jest n2–n, więc relacji zwrotnych jest 2n(n‐1).
Ile jest różnych relacji symetrycznych?
Relacja symetryczna ma dowolnie wypełnione pole na przekątnej i pod przekątną. Nad przekątną musi się znaleźć lustrzane odbicie układu pod przekątną. Relację symetryczną możemy więc określić wpisując jedynki do
n(n+1)/2 pól, relacji takich jest więc 2n(n+1)/2.
Ile jest relacji równoważności? Każda taka relacja to podział na bloki (klasy abstrakcji). Liczba podziału zbioru n‐elementowego na k bloki to tzw. liczba Stirlinga drugiego rodzaju.
Liczba wszystkich podziałów zbioru n‐elementowego (liczba wszystkich relacji równoważności) to tzw. liczba Bella. Jest to suma n‐tego wiersza trójkąta Stirlinga dla podziałów. WARIACJE
Liczba wariacji, czyli różnych ciągów k‐elementowych o wyrazach ze zbioru n‐elementowego, wynosi nk.
Ciąg k‐elementowy, którego wyrazy nie powtarzają się, nazywa się k‐wyrazową wariacją bez powtórzeń. Zamiast mówić o ciągach bez powtórzeń można mówić o funkcjach różnowartościowych. Weźmy więc zbiór k elementowy X i zbiór n elementowy Y oraz wszystkie różnowar‐
tościowe funkcje z X do Y. Mamy wtedy:
•
jeśli k>n, to nie ma takich funkcji,
•
jeśli nk to mamy n∙(n‐1)∙… ∙(n‐k+1) takich funkcji, czyli n .
k
Zadania
Na ile sposobów można wyciągnąć 5 kart z talii 52 kart, jeśli za każdym razem wylosowaną kartę zwracamy do talii? Czy kolejność kart ma znaczenie? Rozwiń to zagadnienie.
Na ile sposobów możemy pokolorować graf o p ponumerowanych wierzchołkach farbami w r kolorach?
Ile jest różnych n‐cyfrowych liczb naturalnych?
Jaka jest liczba słów co najwyżej 20 literowych nad alfabetem 24 literowym? Przykład
W zawodach punktuje się 6 pierwszych miejsc. Startuje 21 drużyn, w tym drużyna polska. Ile może być wyników zawodów? A ile wyników, gdy Polska zajmuje jedno z punktowanych miejsc?
Wynik może być reprezentowany 6‐cio elementowym ciągiem nazw drużyn zajmujących miejsca od pierwszego do szóstego. W przypadku pierwszego pytania, takich ciągów może być p1=212019181716. W przypadku drugiego pytania, przyjmujemy, że jedno z sześciu miejsc punktowanych jest już zajęte przez drużynę polską. Na pierwsze wolne miejsce w tym ciągu możemy wstawić jedną z 20 pozostałych drużyn, na drugie wolne – jedną z 19 pozostałych drużyn, itd. Zatem liczba możliwych
wyników p2=2019181716.
Zapytajmy teraz, jakie jest prawdopodobieństwo, że drużyna polska będzie na punktowanym miejscu? Prosta odpowiedź brzmi, że jest to iloraz p2 przez p1, czyli p3=1/21. Komentarz
Tak będzie jednak tylko wtedy, gdy wszystkie zdarzenia elementarne są jednakowo prawdopodobne, tzn. gdy wszystkie drużyny grają na tym samym poziomie. Tak się jednak nigdy nie zdarza. Zatem dla policzenie tego prawdopodobieństwo trzeba by wziąć pod uwagę rozmaite zależności, i byłoby to dość skomplikowane…
ROZMIESZCZENIA UPORZĄDKOWANE
Ile jest różnych możliwych rozmieszczeń uporządkowanych k elementów w n pudełkach?
Pierwszy element możemy umieścić na n sposobów. Drugi albo w pustym pudełku, których jest n‐1, albo w pudelku z pierwszym elementem na dwa
sposoby (przed nim lub po nim); czyli łącznie na n+1 sposobów.
Jak już umieściliśmy w pudełkach i‐1 elementów, to w kolejnych pudeł‐
kach znajduje się i1, i2, … in elementów oraz i1+ i2+ …+ in = i−1. Element i‐ty możemy włożyć do pierwszego pudełka na i1+1 sposobów, do drugiego na
i2+1 sposobów, itd. Łącznie na (i1+1)+(i2+1)+ …+(in+1) = n+i−1 sposobów. Liczba rozmieszczeń uporządkowanych k elementów w n pudełkach wynosi n(n+1)  (n +2)  … (n+k–1) = n k .
Zadanie
W sali banku są czynne 3 okienka. Na ile sposobów 23 klientów może ustawić się w kolejach do tych okienek?
323 = 34…(3+23‐1) = 25!/2
Zadanie
Czego jest więcej: rozmieszczeń uporządkowanych 2 elementów w 3 pudełkach czy 3 elementów w 2 pudełkach?
ZADANIA Z KARTAMI: POKER
Talia kart składa się z 4 kolorów zwanych trefl, karo, kier i pik. Każdy kolor składa się z 13 kart: 2, 3, 4, 5, 6, 7, 8, 9, 10, W, D, K, A.
Układ kart w ręce (figura) jest zbiorem 5 kart z talii 52 kart. Kolejność wyboru kart nie jest istotna.
Rodzaje figur:
poker królewski to 10,W,D,K,A w jednym kolorze
poker to sekwens w jednym kolorze nie będący pokerem królewskim (sekwens to 5 kolejnych kart, przy czym as może stać przed dwójką lub za królem)
czwórka to układ zawierający 4 karty tej samej wysokości, np. DDDD
ful to 3 karty tej samej wysokości i 2 karty tej samej wysokości
kolor to 5 kart w jednym kolorze nie tworzących ani pokera królewskiego, ani pokera strit to sekwens nie będący ani pokerem, ani pokerem królewskim
trójka to 3 karty tej samej wysokości, czwarta innej i piąta jeszcze innej
dwie pary to 2 karty tej samej wysokości, 2 karty innej, lecz między sobą tej samej wysokości, i piąta karta jeszcze innej wysokości
para to 2 karty tej samej wysokości, pozostałe dowolne ale łącznie nie
tworzące żadnego z wymienionych wyżej rodzajów układów
zerówka to układ, który nie jest żadnego z powyższych rodzajów.
Powyższa kolejność jest odwrotna do szansy otrzymania figury danego rodzaju.
1. Ile jest układów kart w pokerze? Pokaż, że jest to 2 598 960.
2. Ile układów, to fule? Trochę wcześniej wprowadziliśmy pojęcie „typ  4  4
fula”. I pokazaliśmy, że jest tych układów  3    2  dla jednego typu oraz    
1312 różnych typów. Zatem 24156 = 3744 możliwości.
Zakładając, że każdy układ jest jednakowo prawdopodobny i przyjmując, że prawdopodobieństwo zdarzenia to iloraz liczby zdarzeń elementarnych
sprzyjających zdarzeniu przez liczbę wszystkich możliwych zdarzeń elementarnych, prawdopodobieństwo wyciągnięcia fula to 3744/2598960
= 0.001440 czyli około 1,5 promila.
Policz prawdopodobieństwa pozostałych rodzajów figur w pokerze!
ZASADA ROZMIESZCZANIA PRZEDMIOTÓW W PUDEŁKACH
Sposobów rozmieszczenia n identycznych przedmiotów w k rozróżnialnych pudełkach jest k −1
(n+k −1
)
.
Liczba sposobów wyboru zbioru n przedmiotów (dopuszczalne są powtórzenia) k rozróżnialnych typów wynosi k −1
(n+k −1
)
.
Zadanie
Na ile sposobów można wybrać 10 cukierków w trzech smakach?