Historie úprav

Avatar uživatele

Zeptal/a se – 17.září 17:24

Mám správně tuto kombinatorickou úlohu?

Věda – Matematika

Řeším rozlosování turnaje v mariáši. Konkrétně mě zajímá varianta, kdy se turnaje zúčastní 14 hráčů a hraje se na 5 kol. 14 hráčů posadím ke 4 stolům po 4, 4, 3 a 3 hráčích. A samozřejmě smyslem rozlosovaní je, aby se stejní hráči v dalších kolech spolu nepotkávali a zároveň, aby maximálně rovnoměrně hrál každý na trojkovém a čtyřkovém stole. Počet kombinací, jak vylosovat jedno kolo je podle mě tento:
c(4, 14) * c(4, 10) * c(3, 6) * c(3, 3) = 4204200
A teď, pokud bych chtěl prověřit všechny kombinace možných rozlosování všech 5 kol, tak by to bylo takto?

  1. kolo – nemusím losovat posadím je třeba 1,2,3,4 + 5,6,7,8 + 9,10,11 + 12,13,14
  2. kolo – 4204200 kombinací
  3. kole – 42042002 kombinací
  4. kole – 42042003 kombinací
  5. kole – 42042004 kombinací = 312. 416. 146. 662. 589. 000. 000. 000. 000 kombinací. Čili bez šance tyto všechny kombinace prověřit? Uvažuji správně?

Avatar uživatele

Zeptal/a se – 17.září 20:19

Mám správně tuto kombinatorickou úlohu?

Věda – Matematika

Řeším rozlosování turnaje v mariáši. Konkrétně mě zajímá varianta, kdy se turnaje zúčastní 14 hráčů a hraje se na 5 kol. 14 hráčů posadím ke 4 stolům po 4, 4, 3 a 3 hráčích. A samozřejmě smyslem rozlosovaní je, aby se stejní hráči v dalších kolech spolu nepotkávali a zároveň, aby maximálně rovnoměrně hrál každý na trojkovém a čtyřkovém stole. Počet kombinací, jak vylosovat jedno kolo je podle mě tento:
c(4, 14) * c(4, 10) * c(3, 6) * c(3, 3) = 4204200
A teď, pokud bych chtěl prověřit všechny kombinace možných rozlosování všech 5 kol, tak by to bylo takto?

  1. kolo – nemusím losovat posadím je třeba 1,2,3,4 + 5,6,7,8 + 9,10,11 + 12,13,14
  2. kolo – 4204200 kombinací
  3. kole – 42042002 kombinací
  4. kole – 42042003 kombinací
  5. kole – 42042004 kombinací = 312. 416. 146. 662. 589. 000. 000. 000. 000 kombinací. Čili bez šance tyto všechny kombinace prověřit? Uvažuji správně?

No, to je moc zajímavá myšlenka s těmi virtuálními hráči, budu nad ní hloubat. Zatím jsem to moc nepromyslel, ale jak by to podle této metody bylo, pokud by se hráčů sešlo 15? Tam už to řešení možné je, virtuální hráč je jen jeden, stačí ho odebrat z těch 16 a hotovo, ne? Tím je i zaručeno, že každý hráč půjde přesně jednou na trojkový stůl. Čili pro 15 a výš hráčů na 5 kol lze vždy najít řešení, spravedlivého obsazení trojkových a čtyřkových stolů a zároveň eliminovat potkání dvou hráčů opakovaně. Abych se pochlubil, tak se mi podařilo vygenerovat skript ve VBA, který toto potvrzuje, ale právě při těch 14 hráčích se už nedokážu dostat na lepší variantu než, že 2 hráči, co jdou 3× na trojkový stůl, tak se s nikým nepotkají 2×, ostatní hráči, co jsou na trojkový stůl pouze 2× se s jedním hráčem potkají 2× a s jedním, se stejně jako ti, dva další nepotkají vůbec. Líp to asi rozlosovat nepůjde, co? Já právě spekuluji o tom, zda by i mezi těmi, co jdou jen 2× na trojkový stůl nejde alespoň u některých eliminovat to potkání se s tím jedním hráčem znovu. Ale zatím jsem takovou variantu neobjevil, tudíž se domnívám, že neexistuje a není ani reálné prověřit všechny kombinace, jestli přeci jen nějaká o fous lepší kombinace neexistuje. I když zas toto je pro všechny víceméně stejně spravedlivé.