Zadanie
Biorąc pod uwagę ciąg wejściowy jednego lub więcej znaków ASCII, których punkty kodowe mają wartość od 0 do 128 (wyłączne), wykonaj następujące czynności:
- Konwertuj każdy znak na 7-bitowy kod ASCII (jeśli kod ASCII jest mniejszy niż 7 bitów, wstaw początkowe bity zerowe)
- Połącz wszystkie bity (powoduje to, że
7*n
bitn
jest liczbą znaków) - Dla każdego bitu w tym strumieniu bitów wydrukuj 1, jeśli różni się od poprzedniego bitu, i wydrukuj 0 w przeciwnym razie. Pierwszy bit wyjściowy to zawsze 1.
Przykład
Wejście:
Hi
Wynik:
11011001011101
Wyjaśnienie:
Ciąg „Hi” ma kody ASCII
72 105
które w bitach to:
1001000 1101001
I wskaźniki bitów przejścia:
11011001011101
To jest kod golfowy. Wygrywa najniższa liczba bajtów.
Przypadki testowe
Przypadek testowy 1:
Hello World!
110110010101110011010101101010110001110000111110000110000001011101101010101100110001
Przypadek testowy 2:
%% COMMENT %%
1110111111011111100001100010010100001010110101011010011101010011111110011000001101111110111
Przypadek testowy 3 (kredyt dla Luisa Mendo):
##
11100101110010
Gratulacje dla Luisa Mendo za najkrótsze rozwiązanie z 9 bajtami w MATL!
##
(wiodący0
bit; niektóre odpowiedzi obecnie nie udają się z tego powodu)