Dado
- una matriz
a
de caracteres deu=" ╶╺╵└┕╹┖┗╴─╼┘┴┶┚┸┺╸╾━┙┵┷┛┹┻╷┌┍│├┝╿┞┡┐┬┮┤┼┾┦╀╄┑┭┯┥┽┿┩╃╇╻┎┏╽┟┢┃┠┣┒┰┲┧╁╆┨╂╊┓┱┳┪╅╈┫╉╋"
- las coordenadas de una submatriz como
x
,y
,w
,h
(izquierda, superior, de anchura> 1, altura> 1) - un grosor
t
de 1 (como en┌
) o 2 (como en┏
)
renderiza un borde interno para la submatriz con el grosor especificado, teniendo en cuenta las líneas existentes.
x=4;y=1;w=2;h=3;t=2;
a=[' ┌───┐',
'┌┼┐ │',
'│└┼──┘',
'└─┘ ']
// output
r=[' ┌───┐',
'┌┼┐ ┏┪',
'│└┼─╂┨',
'└─┘ ┗┛']
Al sobrescribir un fragmento de línea, el nuevo grosor debe ser mayor que el grosor anterior y t
.
No se trata de analizar la entrada o la búsqueda de la complejidad de Kolmogorov de Unicode, por lo que puede suponer a
, u
, x
, y
, w
, h
, t
están disponibles para usted como variables. Además, puede colocar el resultado en una variable en r
lugar de devolverlo o generarlo, siempre que r
sea del mismo tipo que a
.
Si su lenguaje le obliga a poner código en funciones (C, Java, Haskell, etc.) y su solución consiste en una sola función, puede omitir el encabezado y pie de página de la función.
Prueba más grande:
x=4;y=1;w=24;h=4;t=1;
a=['┏┱─────┐ ┌┐ ┎──┲━┓',
'┠╂─────┘ ││ ┃ ┗━┛',
'┃┃ ││ ┃ ',
'┠╂──┲━━┓ ┏━━━━┓ ││ ┌╂┰┐ ',
'┃┃ ┗━━┩ ┃ ┃ └╆━┓ └╂┸┘ ',
'┃┃ │ ┃ ┃ ┃ ┃ ┃ ',
'┗┹─────┘ ┗━━━━┛ ┗━┛ ╹ ']
// output
r=['┏┱─────┐ ┌┐ ┎──┲━┓',
'┠╂──┬──┴─────────┼┼─────╂──╄━┛',
'┃┃ │ ││ ┃ │ ',
'┠╂──╆━━┓ ┏━━━━┓ ││ ┌╂┰┐│ ',
'┃┃ ┗━━╃──╂────╂─┴╆━┱──┴╂┸┴┘ ',
'┃┃ │ ┃ ┃ ┃ ┃ ┃ ',
'┗┹─────┘ ┗━━━━┛ ┗━┛ ╹ ']
0 <= x < x + w < width(a)
y0 <= y < y + h < height(a)
?Respuestas:
JavaScript, 218 bytes
a
debe tomarse como conjunto de conjunto de caracteres.Mostrar fragmento de código
fuente
(a,x,y,w,h,t,u)=>...
conr=...
Python 3 ,
226201197 bytesPruébalo en línea!
Sin golf:
fuente
(p%3,p%9//3,p%27//9,p//27)[o]
→p//3**o%3
guarda un montón de bytes. Entoncesmax(…)*3**o for
→3**o*max(…)for
guarda uno más. Y luego puede obtener uno más alineando3**
y barajandoP
para indexarloo%5-1
, produciendo:sum(o*max((i<n*A,j<m*B,y<j*B,x<i*A)[o%5-1]*t,p//o%3)for o in(1,3,9,27))
R=range
y bajarlo a 201JavaScript (ES6), 174 bytes
Mostrar fragmento de código
fuente