Problem
Dane wejściowe, a
gdzie a jest siatką znaków w dowolnym formacie wejściowym, o ile ma tylko jeden element dla każdego „bloku” wyniku.
I dane wejściowe, b
gdzie b jest siatką liczb tego samego rozmiaru co dane wejściowe a
.
Istnieją dwa rodzaje dróg, 1 oznacza drogę kamienną oznaczoną, @
a 2 oznacza drogę gruntową oznaczoną#
@
Droga jest w środku i wielkość bloku 6x6, gdy droga przylega ta strona jest przedłużony do granicy komórki siatki#
Droga jest w środku bloku jest rozmiar 4x4, jeśli droga jest w sąsiedztwie, że strona zostanie rozszerzony na granicy komórki siatki
Wyprowadza przesunięcie siatki o numer wiersza 8x8 znaku ASCII na wejściu a
i nakłada „drogę” z wejścia b
np.
Wejście a=[[a,b,a],[b,a,b],[a,b,a]] b=[[1,1,1],[2,0,1],[2,0,0]]
Wynik:
Krok 1: Siatka (reprezentacja wejścia 8x8 a
)
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
Krok 2: Nakładanie na drogi reprezentowane przez b
:
aaaaaaaabbbbbbbbaaaaaaaa
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@abbbbbbbba@@@@@@a
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaabbbbbbbb
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
Krok 3: Przesunięcie każdej linii o numer bielizny:
aaaaaaaabbbbbbbbaaaaaaaa
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@abbbbbbbba@@@@@@a
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaabbbbbbbb
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
Zasady:
- Wiodące białe znaki lub znaki nowej linii są dozwolone.
- Końcowe białe znaki i znaki nowej linii są dozwolone.
- To jest golf golfowy, więc wygrywa najkrótszy kod
Oto dodatkowy przypadek testowy ze wszystkimi przypadkowymi przypadkami brzegowymi.
a
jest mniejsza niż tablicab
.['.', ',', '.', ',', '.', ',', '.']
, ale dane wyjściowe są jak w tym wierszu[',', '.', ',', '.', ',', '.', ',']
. Ponadto, co uniemożliwia otrzymanie tego jako wyniku z przypadku testowego: gist.github.com/anonymous/dfcf3b754464f3ca4394d34e9f3bf123 Zwróć uwagę, że drugi 1 z pierwszego rzędu wejścia b przylega do dwóch 2. Dlaczego zdecydowałeś się połączyć go tylko z pierwszymi 2 (w tym samym rzędzie)?Odpowiedzi:
JavaScript (ES6), 250
207bajtówEdytuj poprawkę :(
Funkcja pobierająca dane wejściowe w składni curry (a) (b).
Mniej golfa
Test
źródło
PHP 857 bajtów
Nie do końca tak, jak ktokolwiek mógłby to nazwać „golfem”, ale ponieważ wydaje się, że nikt w ogóle nic nie wszedł, pomyślałem, że to początek. Jest ogromny, ale wydaje się, że działa. Postaram się zagrać w golfa jutro, jeśli będę miał czas.
Przypadek testowy
Wynik
Przypadek testowy
Wynik
Przypadek testowy
Wynik
źródło
Java - 661 bajtów
Cześć! To jest moje pierwsze zgłoszenie tutaj. Jeśli zrobiłem coś złego, proszę powiedz mi.
Możesz spróbować tutaj :)
Unminified:
źródło
and
s na bitoweand
s&&
->&
na kilka bajtów.c='#',d=6,e=1
, możesz usunąć else `else {c = '#'; e = 1; d = 6;}`JavaScript - 299 bajtów
Wypróbuj tutaj
źródło
PHP,
275 268 266 264252 bajtówpobiera dane wejściowe z parametrów GET
a
ib
drukuje do STDOUT. Wypróbuj online.awaria
źródło