2 Problème de boule de cristal trouver le 1er coup avec un minimum de complexité temporelle.
const arr = [false, false, false, false, true, true, true, true, true, true]; function two_crystal_balls(breaks) { const jmpAmount = Math.floor(Math.sqrt(breaks.length)); let i = jmpAmount; for (; i < breaks.length; i += jmpAmount) { if (breaks[i]) { break; } } console.log(i, "i"); const updatedPos = i - jmpAmount; for (let j = updatedPos; j<= i; j++) { if (arr[j]) { console.log('Answer ---> ', j); return ; } } return -1; } two_crystal_balls(arr); /* Output 6 i Answer ---> 4 */
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!