Poniżej znajduje się (schematyczny) Cyfrowy schemat taktowania dla bramki logicznej XNOR .
┌─┐ ┌─┐ ┌─────┐ ┌─┐ ┌─┐ ┌───┐
A ──┘ └─┘ └─┘ └─┘ └─┘ └─┘ └──
┌───┐ ┌───┐ ┌─┐ ┌─────┐ ┌─┐ ┌─┐
B ┘ └─┘ └─┘ └─┘ └───┘ └─┘ └
┌─────┐ ┌─┐ ┌─┐ ┌───┐
X ──┘ └───┘ └───┘ └───┘ └────
Twoim celem jest odtworzenie go dokładnie tak, jak pokazano.
Zasady:
Możesz go wydrukować lub zwrócić ciąg wielowierszowy;
Dowolna liczba śledzenia i / lub wiodących nowych linii jest dozwolona;
Dozwolone są spacje końcowe (ale nie wiodące!);
Jeśli nie możesz użyć rozszerzonych znaków rysowania ramek ASCII, możesz zastąpić je ekwiwalentami Unicode (bez kary bajtowej).
To jest golf golfowy, więc wygrywa najkrótsza odpowiedź w bajtach.
Reprezentacja binarna
Dla Twojej wygody binarna reprezentacja powyższego schematu jest następująca:
INP A=0101011101010110
INP B=1101101011100101
___
X=A⊕B=0111001001001100
Przykładowe dane wyjściowe
Dygresja
Pracując nad tym pytaniem, zaimplementowałem dla niego dwa różne rozwiązania bash, jedno ma długość 122 znaków / bajtów (jak pokazano powyżej), a drugie ma dokładnie 100 bajtów.
Nie mam planów, aby je opublikować (ponieważ zwykle nie zamieszczam odpowiedzi na moje pytania), więc to tylko w celach informacyjnych.
Uważam również, że możliwe są przynajmniej niektóre rozwiązania poniżej 100 bajtów.
Odpowiedzi:
05AB1E , 101 bajtów
+ 5bajtówUTF-8 = 116 bajtów ogółem =106 bajtów(WERSJA LEGACY 05AB1E, NIE JUŻ WIĘCEJ NA TIO)
Wypróbuj online!
Kompresja:
Konwersja:
Korzystanie z kodowania CP-1252 .
źródło
Åв
(zaktualizowałem również końcówkę generatora ASCII-art ): 106 bajtówBubblegum , 76 bajtów
Wypróbuj online!
Wykorzystuje znaki do rysowania ramek z alternatywnego zestawu znaków VT100, czego TIO nie może zademonstrować. Aby uzyskać najlepsze wyniki, uruchom w terminalu UNIX. Mój terminal konwertuje ACS na UTF-8 podczas kopiowania i wklejania, więc możesz zobaczyć efekt tutaj.
Dobrze, wyzwaniem nie powiedzieć musimy podjąć końcową plecy wyjście z trybu ACS przed powrotem do zbiornika. Powodzenia z tym.
źródło
Rubin, 113 bajtów
licząc drukowane symbole jako jeden bajt autoryzowany przez wyzwanie (byłem zaskoczony, gdy odkryłem, że w rzeczywistości są to 3 bajty).
6 linii wyjściowych nadaje się do kodowania 6 bitów na każdy znak magicznego ciągu. Ale znaki magicznej struny faktycznie kodują dla każdego przejścia w ten sposób:
Jest to dekodowane w celu znalezienia 2 znaków, które muszą być wydrukowane dla każdego przejścia (pierwszym z nich jest spacja lub linia pozioma). 8-znakowe ciągi dla górnego i dolnego rzędu nakładają się: Dwa ostatnie znaki dla górnego rzędu
11
to dwie poziome linie, które pasują do tego, co jest potrzebne dla pierwszych dwóch znaków dolnego rzędu00
. 8 znaków w dolnym rzędzie jest zawijanych: są to ostatnie 6 i pierwsze 2 znaki ciągu symboli.Nieskluczony kod
źródło
If you can not use the extended ASCII box-drawing characters, you may substitute them for the unicode equivalents (at no byte penalty)
Wszyscy oceniliśmy nasze odpowiedzi zgodnie z zasadami.PowerShell, 255 znaków, 265 bajtów (UTF-8)
Działa to na moim komputerze, ale wydaje się, że nie analizuje poprawnie bajtów w TIO ...
Jest
$a
to ciąg składający się z wielu wierszy wypełniony cyframi i spacjami, a następnie pętlami0..4|%{...}
. Przy każdej iteracji mamy-replace
odpowiednią cyfrę$_
z odpowiednim znakiem'┌─┐┘└'[$_]
i zapisujemy ją z powrotem$a
. Następnie po prostu wychodzimy$a
z rurociągu, a dane wyjściowe są niejawne.źródło
JavaScript (ES6),
163158154 bajtówUwaga: liczenie znaków UTF-8 jako bajtów, autoryzowanych przez wyzwanie.
Próbny
Pokaż fragment kodu
Zaoszczędzono 4 bajty dzięki Neilowi
źródło
j%2?" ─"[p^i&1]:" ┐┌─└┘ "[p+(p=[27370,42843,12878][i>>1]>>j/2&1)*2+i%2*3]
oszczędza 3 bajty.C,
213205 bajtówDla odmiany rozmiar programu C w tym wyzwaniu nie jest całkowicie śmieszny w porównaniu z innymi językami.
Nieoznakowany, zdefiniuj rozwinięty i skomentował:
Uwaga: ciąg C nie może zawierać znaków Unicode. Wszystkie wyświetlane znaki muszą być zwykłymi starymi 8-bitowymi znakami (ale mogą być wybrane w rozszerzonym zakresie). Zasadniczo ważność danych wyjściowych zależy od strony kodowej.
źródło
tcl, 221 znaków, 299 bajtów
można uruchomić na: http://rextester.com/live/VVQU99270
źródło