-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathreto-1.js
37 lines (31 loc) · 1.5 KB
/
reto-1.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/* Instrucciones
Este año los elfos han comprado una máquina que envuelve regalos. Pero... ¡no viene programada! Necesitamos crear un algoritmo que le ayude en la tarea.
A la máquina se le pasa un array con los regalos. Cada regalo es un string. Necesitamos que la máquina envuelva cada regalo en papel de regalo y lo coloque en un array de regalos envueltos.
El papel de regalo es el símbolo * y para envolver un regalo se coloca el símbolo * de forma que rodee totalmente al string por todos los lados. Por ejemplo:
const gifts = ['book', 'game', 'socks']
const wrapped = wrapping(gifts)
console.log(wrapped)
/* [
"******\n*book*\n******",
"******\n*game*\n******",
"*******\n*socks*\n*******"
] */
/*Como ves, el papel de regalo envuelve el string. Por arriba y por abajo, para no dejar ningún hueco, las esquinas también están cubiertas por el papel de regalo.
¡Suerte! */
function wrapping(gifts) {
return gifts.map((gift) => {
return `*${"*".repeat(gift.length)}*\n*${gift}*\n*${"*".repeat(
gift.length
)}*`;
});
}
const gifts = ["book", "game", "socks"];
const wrapped = wrapping(gifts);
console.log(wrapped);
/* Puntos conseguidos: 121
2747 ops/s (Más alto es mejor)
Complejidad ciclomática: 1
(Más bajo es mejor)
Mantenibilidad: 159%
(Más alto es mejor)
Los retos son puntuados dependiendo de la calidad de tu solución. Utilizamos diferentes factores como la complejidad ciclomática y la velocidad de ejecución. El número de líneas no es un factor determinante. */