Problème
Étant donné l'entrée a
où a est une grille de caractères dans n'importe quel format d'entrée tant qu'il n'a qu'un seul élément pour chaque «bloc» de la sortie.
Et entrez b
où b est une grille de nombres de la même taille que l'entrée a
.
Il existe deux types de route, un 1 représente une route en pierre marquée par @
et un 2 représente un chemin de terre marqué par#
- Une
@
route est centrée dans le bloc et est de taille 6x6, si une route est adjacente, ce côté est prolongé jusqu'à la bordure des cellules de la grille - Une
#
route est centrée dans le bloc est de taille 4x4, si une route est adjacente, ce côté est prolongé jusqu'à la bordure des cellules de la grille
Sortez une grille décalée par un numéro de ligne de 8x8 du caractère ASCII en entrée a
et superposez une «route» à l'entrée b
par exemple
Contribution a=[[a,b,a],[b,a,b],[a,b,a]] b=[[1,1,1],[2,0,1],[2,0,0]]
Production:
Étape 1: la grille (représentation 8x8 de l'entrée 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
Étape 2: superposition de routes représentées par 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
Étape 3: Décalez chaque ligne avec le numéro de lin:
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
Règles:
- Espaces de début ou sauts de ligne autorisés.
- Espaces blancs et sauts de ligne autorisés.
- C'est le code-golf donc le code le plus court gagne
Voici un cas de test supplémentaire avec tous les cas de bord dans lesquels je peux penser.
a
est plus petit que le tableaub
.['.', ',', '.', ',', '.', ',', '.']
, mais la sortie est comme cette ligne[',', '.', ',', '.', ',', '.', ',']
. En outre, ce qui vous empêche d'avoir cela en sortie de votre scénario de test: gist.github.com/anonymous/dfcf3b754464f3ca4394d34e9f3bf123 Notez que le second 1 de la première ligne de l'entrée b est adjacent à deux 2. Pourquoi avez-vous choisi de le connecter uniquement aux 2 premiers (dans la même rangée)?Réponses:
JavaScript (ES6), 250
207octetsModifier la correction de bogue :(
Une fonction prenant des entrées dans la syntaxe de curry (a) (b).
Moins golfé
Tester
la source
PHP 857 octets
Pas vraiment ce que n'importe qui pourrait appeler "golfé" mais comme personne d'autre ne semble avoir rien saisi du tout, j'ai pensé que c'était un début. C'est énorme, mais cela semble fonctionner. Fera un effort pour jouer au golf demain si j'ai le temps.
Cas de test
Production
Cas de test
Production
Cas de test
Production
la source
Java - 661 octets
Salut! Ceci est ma première soumission ici. Si j'ai fait quelque chose de mal, dites-le moi.
Vous pouvez l'essayer ici :)
Non minifié:
la source
and
s à bitwiseand
s&&
->&
pour quelques octets.c='#',d=6,e=1
alors vous pouvez supprimer le else `else {c = '#'; e = 1; d = 6;}`JavaScript - 299 octets
Essayez-le ici
la source
PHP,
275 268 266 264252 octetsprend l'entrée des paramètres GET
a
etb
imprime dans STDOUT. Essayez-le en ligne.panne
la source