Bucle sobre números
Entonces esta es la pregunta que se da.
Estás en una habitación con un círculo de 100 sillas. Las sillas están numeradas secuencialmente del 1 al 100.
En algún momento, se le pedirá a la persona en la silla # 1 que se vaya. Se omitirá a la persona en la silla n. ° 2 y se le pedirá a la persona en la silla n. ° 3 que se retire. Este patrón de saltarse a una persona y pedirle a la siguiente que se vaya continuará dando vueltas alrededor del círculo hasta que quede una persona, el sobreviviente.
Y esta es la respuesta que se me ocurrió. Creo que esta es la respuesta correcta, lo he hecho en papel unas 10 veces y he encontrado 74 cada vez. ¿Es esta una pregunta con trampa o algo así? Porque no estoy seguro de qué hacer desde aquí.
Aquí está el jsfiddlehttp://jsfiddle.net/cQUaH/
var console = {
log : function(s) {
document.body.innerHTML += s + "<br>";
}
};
var chairArr = [];
for (var i = 1; i <= 100; i++){
chairArr.push(i);
}
var j = 2;
while(chairArr.length > 1) {
console.log('removing ' + chairArr[j]);
chairArr.splice(j, 1);
j++;
if(j >= chairArr.length) {
console.log('--- Finished pass');
console.log('--- Array state:');
console.log(chairArr);
j = (j == chairArr.length) ? 0 : 1;
}
}
console.log('--- Final result: ' + chairArr);
//result 74