Witamy w barze piNapple w Melbourne. Wszyscy najlepsi golfiści z kodem są tutaj, ze swoimi laptopami, próbowaniem koktajli i programowaniem coraz gorzej.
Czuję szczególną potrzebę ponownego podkreślenia ostatniego punktu. Coraz gorzej. Alkohol może robić śmieszne rzeczy w programowaniu logiki.
Tak więc - kilku golfistów próbowało zagrać w zagnieżdżone piny w coraz bardziej egzotycznych językach. Ktoś wykonał czwarte zamówienie w INTERCAL. Potem zatrzymał się przepływ alkoholu. Pijany przypadkowo usunął algorytmy odczytu kodów kreskowych z zupełnie innego komputera ... który nie był nawet podłączony do żadnej sieci! (Dzieci - nie INTERCAL. Ze względu na was. Ze względu na waszą rodzinę.)
Zwykle nie byłby to duży problem. Ale jakiś golfista zaprojektował system lata temu i żaden z kodów kreskowych nie był standardem. Zakładając, że 1 to linie, a 0 to spacja, wszystkie zaczynają się od 101, a kończą na 1001. Wszystko w środku jest zakodowane w 7-bitowym ASCII.
Barman ma duży fantazyjny czytnik kodów kreskowych, który zwróci ciąg o dowolnej długości (choć mniej niż 300 bitów) 1 i 0, poprzez STDIN, argument lub plik, w zależności od programu. I może wystąpić do przodu lub do tyłu, w zależności od tego, w jaki sposób trzymana jest butelka. Twój program musi zwrócić ciąg znaków od środka kodu kreskowego, poprzez STOUT lub plik.
Niestety nie wydał tyle na swoje przechowywanie, więc wybierany jest program z najkrótszym źródłem i wygrywaj darmowe drinki i pijane samouczki programistyczne od innych golfistów.
Powodzenia!
101...1001
lub1001...101
odwróć w tym drugim przypadku, a następnie spakuj środek do bajtów.Odpowiedzi:
GolfScript, 30 znaków
Dane wejściowe są dostarczane przez STDIN. Przykład :
źródło
J - 35 bajtów
Wyjaśnienie nastąpi później :).
źródło
Pyth , 21 lat
Wyjaśnienie:
Zauważ, że chociaż pytanie jest starsze niż język, istnienie pytania nie wpłynęło w żaden sposób na projekt języka, ponieważ nie widziałem tego pytania do dziś.
Nadal reguły są regułami, więc robię to CW.
źródło
AWK, 116 bajtów
Wiem, że to pytanie nie spotkało się z dużą miłością, ale byłem ciekawy tego
AWK
rozwiązania i rozwiązania. To nie jest wcale takie mądre, ale wydaje się, że działa i nie widzę żadnych oczywistych obszarów do gry w golfa. Oryginalnie odwróciłem łańcuch, gdy było to potrzebne, ale to dodało więcej bajtów niż tylko udoskonalenie logiki przyrostowej, aby przejść do tyłu.źródło