Diskuze: Předvánoční speciál machra - Santova hádanka
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.

Vlastník

Zobrazeno 50 zpráv z 74.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí Java, jsme si ověřili nabyté zkušenosti z kurzu.
To nespočítám ani na papíře..
(možná jo.. )
Tohle je hádanka, kterou vymyslel Einstein. Tohle je samozřejmě upravená
verze. Měli jsme to řešit při jedné hodině matematiky, když nám chyběla
učitelka.
Řešení bylo jednoduché, ale pro počítač to bude těžší...
Tak jsem ve dvou konečně došel k výsledku na papíře.
To pak není ono, musíš to hned algoritmovat
To bych nedal, skoro jsem to nedal ani na papíře.
Já si domyslel, že zlobilo to dítě, kterému nedopadl žádný dárek.
To že si to přeju neznamená, že to dostanu... To mě právě zmátlo
Teď mi to došlo spolu s chybou, co jsem našel.
Jak moc ten algoritmus má být "univerzální" ?
Mi se to právě nechce dělat na papíře vůbec, tak to programuji
Mě by se to zase nechtělo programovat. Ani nevím vodkaď začít.
no toto udělám za každou cenu, i kdyby o měl algoritmus řešit hrubou silou.
mě tam pletou ty děti žijící vedle jiných.
všechny možné varianty. Jedna (nebo více), která bude splňovat všechny podmínky bude vypsána.
Proč si santa neudělal backup? To mu měli ti skřítci říct!
Skřítci poslali data do oblak (cloud).
Výborná připomínka. Na první pohled by se mohlo zdát, že je zadání příliš nepřesné...
Pokud má program pouze vyřešit jedno konkrétní zadání, stačí si vzít tužka a papír, úlohu během několika minut vyřešit a pak napsat program, který vypíše jméno dítěte.
Pokud je cílem vytvořit program, který vyřeší libovolné zadání, chybí specifikace toho, co může a nemůže v zadání být.
V reálném světě bychom na sdraca nejspíše poslali analytika a
pořádně ho vyzpovídali
Protože jsme ale na devbooku, není těžké si domyslet, oč jde. Čím obecnější a propracovanější řešení, tím lépe. Viděl bych to tak, že zadání přepíšu do textového souboru v nějakém vhodném formátu, který můj program při spuštění načte. Pokud se zadání trochu změní, opravím jen vstupní soubor, ale program zůstane stejný.
Zdravím všechny účastníky soutěže, soudě podle vašich ohlasů vás hádanka zaujala, což nás moc těší.
Jak píše nuz15, Einstein by se mohl zdát být autorem hádanky. Letos je
to ovšem jinak - autorem je Santa. A protože mám v zadání také prsty, odpovím na vaše dotazy.
Q: Jak zjistím, které dítě zlobí?
A: Doporučuji být pečlivější při čtení zadání: A protože jedno z
dětí celý rok jenom zlobilo, dostane k vánocům pouze
uhlí!
Q: Jak je to s dárky? Aneb, to, že si to přeju neznamená, že to
dostanu... ?
A: Zbylé děti byly hodné, a proto opravdu dostanou to, co si
přejí. Možná, že vás zmátly ty ponožky jako dárek, ale co my
víme?
Q: Jak moc má být algoritmus univerzální? Nebo naopak jak moc nesmí být
specializovaný?
A: Tak moc, jak to dokážete. Nemusíte chodit s kanónem na vrabce, ale
jednoduché a obecné řešení má své výhody. Když hodnotím řešení,
rád mu trochu změním vstupní hodnoty (klidně i nesmyslně), abych viděl,
jak se chová. Vaše programy by měly nějakým způsobem zvládnout i to.
Nemusíte rovnou psát vlastní parser, který z textového souboru načte
zadání, porozumí mu a použitím vyšší inteligence ho vyřeší... ale
samozřejmě platí, že čím lepší program, tím větší šance na výhru.
Q: Sdraco, ty už jsi to vyřešil algoritmem?
A: Dovolím si odpovědět za Sdraca. Tahle soutěž je o vás a pro vás! Máme
své řešení, kterým jsme ověřili správnost zadání, ale více se
těšíme na ta vaše.
Silvinios má určitě pravdu v jedné věci - jsme na Devbooku, kde jsou úlohy, hádanky a programování denním chlebem. Cílem je se pobavit a něco naučit.
Tak to prosím zmaž.
Myslel som si, že toto je len prvý krok a nie som si istý, že je to
správne.
Napísať algoritmus bude úplne iné kafe.
Můžeš to coellsovi poslat do PM.
Napísal si: " Když hodnotím řešení, rád mu trochu změním vstupní
hodnoty (klidně i nesmyslně)..."
Chcem sa spýtať, či sa môže zmeniť aj počet domov(5) a počet
vlastností(5*5), alebo len samotné vlastnosti?
Tím myslím, že mohu dát Aničku do pátého domu a uvidím, jak si s tím
program poradí. Nebo také mohu do pátého domu dát všechny děti
Klíčové ovšem je správně vyřešit původní zadání.
Sdraco, v zadaní si napísal:" 2. Maruska si k vánocům přeje
počítačovou hru"
Predpokladám, že správne má byť "Maruška" a tak to bude aj v zadaní.
Zadání mě trochu popletlo, ale jinak na papíře hotovo Mám ještě dotaz. Máme
nějaký univerzální vstup nebo můžu mít vlastní formát zadání (je
možné, že se někdo ptal)
Ano. Btw zkouším to natvrdo a počítá to už 4 hodiny
Neměl by. Vypínat to nebudu, jestli to nevypočítá do 2 rána, tak to
kašlu
Vždyť řešení je jen 3125 (55) jestli se nepletu ne?
EDIT: Řešení je jen jedno, možností je 5, při výpočtu KOMPLETNÍ TABULKY je zde 55
(5!)^5 ... když k tomu přohodíš testování podmínek, měnění atributů instancí ...
Pravda pravda. S tím jsem nějak nepočítal Tak už to chápu
Zadání můžete mít v libovolném formátu, žádná omezení nejsou.
Tak po optimalizaci +- 200ms
Skúšam to bez permutácií za pomoci logiky, ale zatiaľ som sa ďaleko nedostal.
Pokud to dokážeš, tak se těším na řešení.
Zobrazeno 50 zpráv z 74.