-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathReto #18.js
More file actions
54 lines (46 loc) · 1.25 KB
/
Reto #18.js
File metadata and controls
54 lines (46 loc) · 1.25 KB
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
/**
* Reto #18: 🎄 Luces en línea con diagonales
*
* El panel de luces navideñas 🎄✨ del taller ha sido un éxito total. Pero los elfos quieren ir
* un paso más allá: ahora quieren detectar si hay una línea de 4 luces del mismo color también en
* diagonal.
El panel sigue siendo una matriz donde cada celda puede ser:
'.' → luz apagada
'R' → luz roja
'G' → luz verde
Ahora tu función debe devolver true si existe una línea de 4 luces del mismo color encendidas y
alineadas, ya sea horizontal ↔, vertical ↕ o diagonal ↘↙.
Ejemplos
*/
hasFourInARow([
['R', '.', '.', '.'],
['.', 'R', '.', '.'],
['.', '.', 'R', '.'],
['.', '.', '.', 'R']
])
// true → hay 4 luces rojas en diagonal ↘
hasFourInARow([
['.', '.', '.', 'G'],
['.', '.', 'G', '.'],
['.', 'G', '.', '.'],
['G', '.', '.', '.']
])
// true → hay 4 luces verdes en diagonal ↙
hasFourInARow([
['R', 'R', 'R', 'R'],
['G', 'G', '.', '.'],
['.', '.', '.', '.'],
['.', '.', '.', '.']
])
// true → hay 4 luces rojas en horizontal
hasFourInARow([
['R', 'G', 'R'],
['G', 'R', 'G'],
['G', 'R', 'G']
])
// false → no hay 4 luces del mismo color seguidas
/**
* @param {string[][]} board
* @returns {boolean}
*/
function hasFourInARow(board) {}