![]() | ÚložkyZa vyřešení následujících úložek získáte body do celkového hodnocení soutěže o velké ceny. Úložky můžete řešit v libovolném pořadí. Řešení odevzdávejte Milanovi nebo Martinovi v ústně-písemné podobě. Pomocí rovnoramenných vah nalezněte falešnou kuličku mezi 13 na nejmenší počet vážení. V jednom případě nemusíte určit, zda je falešná kulička lehčí nebo těžší. Najděte poslední nenulovou číslici v čísle 390626!. Rozložte číslo 1209035770830184832839919 na součin prvočinitelů. V jednom městě se rozmohla nevěra, což starosta ráno prvního dne oznámil všem obyvatelům. Proto přijali následující opatření: V poledne se všichni muži sejdou a každý na všech ostatních (kromě sebe) uvidí, zda je jejich žena nevěrná. Sám o sobě to neví. Pokud je si muž stoprocentně jistý, že je mu jeho žena nevěrná, musí ji hned potom v noci vyhnat z domu. Dvě noci se nic nedělo a třetí noc bylo několik žen vyhnáno z domu. Kolik jich bylo a jak jste na to přišli? Skupina 100 vězňů dostala od bachaře nabídku, že budou všichni propuštěni z vězení, pokud vyhrají v následující hře: V místnosti je dvojpolohový vypínač, na začátku vypnutý. Každý den je do místnosti vpuštěn právě jeden náhodný vězeň a ten může vypínač nastavit na libovolnou polohu. Žádným jiným způsobem spolu vězni komunikovat nemohou. Cílem vězňů je spolehlivě poznat, zda už byli v místnosti všichni, což může nahlásit vězeň, který je u vypínače. Hra tímto končí. Vězňové si mohou předem domluvit spolehlivou strategii. Poradíte jim, jakou? Jste na poušti a vaším úkolem je do 1000 km vzdálené oázy dopravit co nejvíce banánů. K dispozici máte 3000 banánů a jednoho velblouda, který unese nejvýše 1000 banánů. S velbloudem je však potíž, nebo vždy po ujití 1 km mu musíte dát (alespoň) jeden banán, jinak vám chcípne. Kolik lze do oázy dopravit nejvíce banánů, aniž by velbloud chcípl? Nepočítají se (samozřejmě) banány ve velbloudově žaludku. Hrajete následující hru: V pytli máte několik kuliček bílé a několik černé barvy. V každém tahu z pytle vytáhnete dvě kuličky. Mají-li stejnou barvu, vložíte do pytle místo nich jednu bílou kuličku, mají-li různou barvu jednu černou. Hra skončí, jestliže v pytli zbývá poslední kulička. Dokážete určit její barvu, víte-li, že na začátku bylo v pytli m bílých a n černých kuliček? Jsou všechny pozice Loydovy patnáctky řešitelné? Jestliže ne, které ano a které ne? Proč? Jestli nevíte, jak se hraje patnáctka, můžete se podívat na následující stránku. Prvočíselný čtverec je matice 4×4, její prvky jsou cify 0-9 a platí pro ní následující pravidla:
Součtem prvočíselného čtverce myslíme součet šestnácti jednotlivých cifer. Vaším úkolem je zjistit počet prvočíselných čtverců se součtem 35. Napište XQuery dotaz, který zjistí, kolik je nul na konci čísla 390626!. Tuto úlohu odevzdávejte Jirkovi. Na třech hromádkách se nachází (a,b,c) sirek. Hrají dva hráči, pravidelně se střídají. Hráč na tahu si vybere hromádku a odebere z ní libovolný nenulový počet sirek. Prohrává hráč, který už nemůže táhnout [(0,0,0) sirek]. Vymyslete strategii pro začínajícího hráče, aby vyhrál, kdykoliv je to možné, a dokažte to o ní. Posloupnost, která se skládá ze znaků '(' a ')' nazveme dobře uzávorkovanou, pokud je
Sestavte vzoreček, který pro zadané N vrátí počet dobře uzávorkovaných posloupností s N otevíracími závorkami. Uvažujme následující hru: Hra se hraje se čtyřmi figurkami, které jsou umístěny na čtyřech různých polích herního plánu. Herní plán je tvořen políčky označenými čísly jedna, dva, tři atd. V každém tahu hráč přesune jednu z figurek na libovolné políčko s nižším číslem. Figurka však nesmí přeskočit žádnou jinou figurku, tj. všechna políčka mezi novou a starou pozicí musí být prázdná. Navíc na žádném políčku nesmí být zároveň dvě figurky. Hra skončí, pokud figurky stojí na políčkách s čísly 1 až 4. Vyhrál ten hráč, který udělal poslední tah. Za jakých podmínek a jak si dokážete zajistit výhru, budete-li začínat? Vyřešíte-li úlohu pro dvě figurky, získáte 1 bod. Navrhněte, jak pomocí konstantního počtu operací (plus, minus, krát, děleno, bitové and, or, xor, negace a bitové posuvy) zjistit, zda je zadané číslo mocnina dvojky. Napište v Prologu predikát, který rozdělí zadaný seznam na seznam sudých členů a seznam lichých členů. Tuto úložku odevzdávejte Janě. Napište v Prologu predikát, který otočí zadaný seznam v lineárním čase. Tuto úložku odevzdávejte Janě. Napište v Prologu výpočet n-tého Fibonacciho čísla v lineárním čase. Tuto úložku odevzdávejte Janě. Najděte v Prologu prostřední prvek seznamu bez použití aritmetiky. Tuto úložku odevzdávejte Janě. |