Sie arbeiten als Praktikant für einen Mathematiker, der TeX, LaTeX usw. wirklich hasst. So sehr, dass er beschlossen hat, alle Schriftsätze aufzugeben und Sie alle Formatierungen in ASCII vornehmen zu lassen. Nach einer Weile haben Sie es satt und beschlossen, Teile davon zu automatisieren, beginnend mit Quadratwurzeln.
So wird eine Quadratwurzel gebildet:
### this is the input
###
###
_____ put a row of underscores stretching one character off either side on top
###
###
###
_____ put a diagonal of slashes in front going the height of the input
/ ###
/ ###
/ ###
_____ put a diagonal of backslashes in front of that, going up half of the input's height rounded up
/ ###
\ / ###
\/ ###
Und das ist es!
Regeln
Sie müssen ein Programm oder eine Funktion erstellen, die eine Zeichenfolge, eine Liste von Zeichenfolgen (dh Zeilen) oder ein Array von Zeichen aufnimmt und die gemäß der obigen Beschreibung transformierte Eingabe ausgibt (nicht unbedingt in genau derselben Reihenfolge oder demselben Prozess).
Bei Bedarf können Sie davon ausgehen, dass die Eingabe rechteckig ist. Nachgestellte Leerzeichen sind weder erforderlich noch unzulässig.
Das ist Code-Golf , also gewinnt die kürzeste Antwort in Bytes.
Beispiele:
Input:
40
Output:
____
\/ 40
Input:
____
\/ 40
Output:
________
/ ____
\/ \/ 40
Input:
/|
|
|
_|_
Output:
_____
/ /|
/ |
\ / |
\/ _|_
Input:
# #
# #
#####
#
#
Output:
_______
/ # #
/ # #
\ / #####
\ / #
\/ #