Po drátě 4: Řešení vedlejší úlohy č. 55
Poměrně obtížná vedlejší úloha - proto cesta k ní vedla až z osmé hlavní úlohy - css soubor použitý na děrné štítky obsahoval (ve stránce nepoužité) pravidlotr\#99:focus { content: "posli me"; }Mimochodem, css skript prošel úspěšně w3c validátorem (stejně jako HTML stránka). Je využito skutečnosti, že CSS 2.0 už umožňuje číselné id objektu (tagu).
Text úlohy se na první pohled tváří jako trochu špatně napsaný kus HTML kódu, s několika syntaktickými chybami. Ve skutečnosti se ale jedná o program ve zcela jiném jazyce. K tomu se snaží navádět nápovědy rozeseté v textu: několikrát zmíněné příslušné anglické sprosté slovo, jednou z toho přímo ve spojení se slovem brain, což už přímo dává název jazyka. Navíc celý text se točí kolem úmornosti debaty s tupcem, aby čtenáři sám naskočil v hlavě nějaký podobně šťavnatý výraz.
Jedním z rysů použitého jazyka - BrainFuck - je i to, že obsahuje pouze jednopísmenné příkazy a všechny ostatní znaky má kompilátor ignorovat. Proto i celý text funguje přímo jako BF program a není potřeba s ním dělat nic jiného, než ho spustit a přečíst si, jaké vypsal heslo: 55:nosorozec. Kompilátor je prý přímo v Ubuntu, ale dají se nalézt různé interpretry i kompilátory na webu, včetně on-line překladačů.
Komentář
Ve své podstatě je toto úloha typu nápad nebo smrt, takže se vedla mezi organizátory poměrně dlouhá debata o správném množství a úrovni nápověd. Původní orgovská verze obsahovala jedinou nápovědu ("...use your brain!</p><p>Fuck!...") a Matějčík ji při testování musel odložit a teprve po dvoudenním odpočinku řešení viděl. Tak jsme opatrně přidali více nápověd a s napětím čekali na odezvu testerů.Autorem úlohy je Milan. Nápad na schování BF programu do HTML je starší než PD3, ale až nyní ji Milan dotáhl a zároveň na ní vybylo místo v seznamu úloh.