Tengo una serie de números. Necesito encontrar el número máximo de 1 consecutivos en la matriz.
var arr = [1, 1, 3, 2, 3, 1, 1, 1]; const maxOne = (arr) => { for (var i = 0; i < arr.length; i++) { let count = 0; let result = 0; if (arr[i] ==1) { count += 1; result = Math.max(result, count); } else { count = 0 } return result } } console.log(maxOne(arr)); salida deseada: 3
mi salida: 1
No estoy seguro de dónde me estoy equivocando.
Tu algoritmo funciona, solo cometiste algunos errores:
const maxOne = (arr) => { let count = 0; let result = 0; for (var i = 0; i < arr.length; i++) { if (arr[i] === 1) { count += 1; result = Math.max(result, count); } else { count = 0 } } return result }Puedes hacer esto.
let arr=[1,2,3,1,1,2,1,1,12,1,1,1,1]; let count=0; for(let i=0;i<arr.length;i++){ arr[i]==1 ? count+=1 :count=0; } console.log(count).