Zadanie
Twoim zadaniem jest napisanie programu, który wyświetli pola ASCII w miejscach określonych przez dane wejściowe.
Wejście
Otrzymasz listę liczb. Format tutaj jest nieco elastyczny, że można użyć dowolnego deliminator chcesz (np 1,2,3,4, 1 2 3 4, [1,2,3,4]). Lista jest w grupach po 4 i określa xywhposzczególne pola. Szerokość i wysokość każdego pudełka będą wynosić co najmniej 2. xi widthbędą od lewej do prawej. yi heightsą od góry do dołu.
Wynik
Renderowanie można traktować jako od prawej do lewej, najpierw zaznaczając pole po prawej stronie, a po nim każde pole po nim. Dozwolone są spacje końcowe, a także jedna spacja nowej linii.
Jak obsługiwać nakładające się pola
Pole po lewej stronie danych wejściowych jest polem górnym i nic go nie nakłada. Każde pole po tym jest renderowane tylko w obszarze, który nie jest już zawarty w polu i nie zastąpi granicy już renderowanego pola.
Styl
Styl pól jest dość standardowy, z +narożnikami, -liniami poziomymi i |liniami pionowymi.
Przykłady:
( >>>oznacza wejście)
>>>0 0 11 4 7 2 8 4 3 5 8 3
+---------+
| |
| |---+
+---------+ |
| |
+---+------+
| |
+------+
>>>0 3 11 4 7 5 8 4 3 8 8 3 4 0 13 5
+-----------+
| |
| |
+---------+ |
| |-----+
| |---+
+---------+ |
| |
+---+------+
| |
+------+
>>>0 0 2 2
++
++
>>>2 2 5 3 1 1 7 5 0 0 9 7
+-------+
|+-----+|
||+---+||
||| |||
||+---+||
|+-----+|
+-------+
>>>0 0 3 3 2 0 3 3
+-+-+
| | |
+-+-+





4 0 13 5zamiast0 4 13 5?