To jest odmiana quine .
Wprowadzenie
Wszyscy piszemy krótki kod, ponieważ z jakichś niejasnych powodów , ale cokolwiek zrobimy, zajmie co najmniej 144 pikseli / bajt (czcionką 12px). Ale co by się stało, gdybyśmy kodowali nasz kod w obrazach? To jest dzisiaj twoje zadanie.
Wyzwanie
Twoim zadaniem jest odczytanie własnego kodu źródłowego (dozwolone są niepoprawne quiny, np. Dosłowne czytanie pliku źródłowego) i utworzenie z niego obrazu, poprzez ustawienie czerwonych, zielonych i niebieskich składników piksela na podstawie ASCII wartość znaku.
Przykład:
Mamy ciąg „Witaj świecie!”
Hello world!
Przekształćmy to w wartości ASCII:
72 101 108 108 111 32 119 111 114 108 100 33
Odwzoruj na nim wartości RGB (jeśli długości kodu źródłowego nie można podzielić przez 3, użyj 0 jako pozostałych znaków):
__________________________________________________
| R | G | B || R | G | B || R | G | B || R | G | B |
----------------------------------------------------
|72 |101|108||108|111|32 ||119|111|114||108|100|33 |
----------------------------------------------------
Następnie tworzymy obraz z najmniejszym obszarem z niego. Mamy 4 zestawy wartości RGB, więc najmniejszy obraz będzie obrazem 2 * 2, przechodzącym od lewego górnego piksela w prawo:
Otrzymujemy ten okropnie kolorowy obraz (przeskalowany, więc jest przynajmniej widoczny, dowodzi również, jak mały może być)
Zasady / Informacje dodatkowe
- Nie ma danych wejściowych
- Dane wyjściowe powinny znajdować się w osobnym pliku lub w osobnym oknie.
- W przypadku znaków wielobajtowych podziel znak na 2 bajty.
- Kod źródłowy musi mieć co najmniej 1 bajt
- Obraz powinien być tym z możliwych rozmiarów, który ma najbliższy stosunek szerokości do wysokości do 1
- Liczba pikseli na obrazie powinna dokładnie wynosić pułap (liczba bajtów / 3), nie należy dodawać żadnych dodatkowych pikseli
Punktacja
To jest golf golfowy , więc wygrywa najmniejsza odpowiedź w bajtach.
height = N
i width = 1
? Myślę, że masz na myśli szerokość / wysokość najbliższą 1.