Balanza impertinente

Desafíos matemáticos, Matemáticas, Rompecabezas No hay Comentarios »
Tags: , , , ,

Adrián Paenza, en su libro Matemáticas, ¿estás ahí?, Episodio 2 nos cuenta un problema:

Se tienen 12 monedas iguales en apariencia, pero una de ellas pesa distinto que el resto. Con todo, no se sabe si pesa más o menos, sólo que pesa diferente. El objetivo es descubrirla. Para ello, se cuenta con una balanza de dos platillos. En realidad, es una balanza muy sencilla que sólo detecta si lo que se pone en uno de los platillos pesa más, igual o menos que lo depositado en el otro. Nada más. Para descubrir la moneda distinta se pueden efectuar sólo tres pesadas.

Yo lo ví hace tiempo en un libro de Martin Gardner (no recuerdo cual) y me encantó. Así que se lo cuento a amigos y conocidos y de vez en cuando tengo alguna discusión. Una vez tuve una discusión tan absurda que hice un programa como este:

Balanza inteligente

Con esto no hay discusión posible y es un buen entrenamiento. Comprenderás porqué es impertinente: la balanza se inclina o se nivela para el peor de los casos. Es decir: hay que saber resolver el problema para ganar a la balanza inteligente.

El poder de la publicidad

Rompecabezas No hay Comentarios »
Tags: ,

PublicidadÚltimamente me he fijado que hay unos paneles de publicidad en Madrid. Es lo que llaman mobiliario urbano.

Me fijé en unos donde hay tres anuncios y se van mostrando por turnos: un anuncio de coches, luego un anuncio de cosmética, luego un anuncio de una película, luego el de cosmética, luego el de coches, etc.

De los tres anuncios a uno se le ha penalizado en el tiempo de visionado, por tener más “poder” que los demás.
¿Sabrá decir el lector cuál y porqué?

“Exactamente” o “al menos”

Rompecabezas 2 Comentarios »
Tags: ,

Martin Gardner, en su libro de recopilación de artítulos “Rosquillas anidadas” formula el siguiente problema (idea de David L. Silverman)

Determínese la veracidad o falsedad de los 10 enunciados siguientes:

  1. Exactamente uno de los enunciados de esta lista es falso.
  2. Exactamente dos de los enunciados de esta lista es falso.
  3. Exactamente tres de los enunciados de esta lista es falso.
  4. Exactamente cuatro de los enunciados de esta lista es falso.
  5. Exactamente cinco de los enunciados de esta lista es falso.
  6. Exactamente seis de los enunciados de esta lista es falso.
  7. Exactamente siete de los enunciados de esta lista es falso.
  8. Exactamente ocho de los enunciados de esta lista es falso.
  9. Exactamente nueve de los enunciados de esta lista es falso.
  10. Exactamente diez de los enunciados de esta lista es falso.

A mí se me ocurrió la siguiente variante. Determínese la veracidad o falsedad de los 10 enunciados siguientes:

  1. Al menos uno de estos enunciados de esta lista es falso.
  2. Al menos dos de estos enunciados de esta lista es falso.
  3. Al menos tres de estos enunciados de esta lista es falso.
  4. Al menos cuatro de estos enunciados de esta lista es falso.
  5. Al menos cinco de estos enunciados de esta lista es falso.
  6. Al menos seis de estos enunciados de esta lista es falso.
  7. Al menos siete de estos enunciados de esta lista es falso.
  8. Al menos ocho de estos enunciados de esta lista es falso.
  9. Al menos nueve de estos enunciados de esta lista es falso.
  10. Al menos diez de estos enunciados de esta lista es falso.

Método 345-435 para las torres de Hanoi

Matemáticas, Rompecabezas No hay Comentarios »
Tags: , , , ,

Por n-ésima petición de los lectores volveré a explicar el método 345-435 (léase “tres cuatro cinco” - “cuatro tres cinco”) para un algoritmo no recursivo de resolución del problema de las torres de Hanoi.

He aquí el algoritmo (en una especie de javascript), las bases se llaman 1, 2 y 3:

// ResolverHanoiNoRecursivo: la función principal
// N es el número de piezas
function ResolverHanoiNoRecursivo(N)
{
 //Los movimientos
 var arrMovimientos;
 //345 si es par
 //434 si es impar

 if(N%2==0)
 {
  arrMovimientos = {3, 4, 5}; //345
 }
 else
 {
  arrMovimientos = {4, 3, 5}; //435
 }
 var secuencia = 0; //será 0, 1 y 2 , y vuelve a empezar 0, 1, 2
 
 //Iteramos mientras no quede resuelto (las dos primeras bases están vacías)
 while(!(Base(1) == 0 && Base(2) == 0))
 {
  MoverPiezas(arrMovimientos[mover]);
  Mover++; //Seguimos con el siguiente movimiento
  if(secuencia==3) //si es tres volvemos a empezar con el cero
    secuencia=0;
 }
}

function Base(NBase)
{
 //dice el tamaño de la pieza superior de la base NBase
 //si no hay pieza devuelve 0
 …
}

//El meollo
funcion MoverPiezas(M)
{
 var baseA, vaseB; //moveremos de la base A a la base B
 if(M==3) //(1+2)
 {
  baseA = 1;
  baseB = 2;
 }
 if(M==4) //(1+3)
 {
  baseA = 1;
  baseB = 3;
 }
 if(M==5) //(2+3)
 {
  baseA = 2;
  baseB = 3;
 }
 //La regla del juego:
 //Si la base B es mayor que la A, el movimiento es de A a B
 //Si la base A es mayor que la B, el movimiento es de B a A
 if(Base(baseB) > Base(baseA))
 {
  HacerMovimiento(baseA, baseB);
 }
 if(Base(baseA) > Base(baseB))
 {
  HacerMovimiento(baseB, baseA);
 }
}

El problema de la parada de autobús (II)

Rompecabezas No hay Comentarios »
Tags: , ,

Para no dejar pasar el tiempo, escribo este “pensamiento” y comento que dentro de poco pondré un vídeo de cómo hacer el cubo de Velayos.

No creo que haya una única solución para el problema de la parada de autobús. Hay que saber qué peso dar a cada elemento: esperar, andar, llegar a casa tarde. Supongamos que damos puntuaciones a cada evento, se trataría de saber actuar para tener la menor puntuación posible.

  1. Hay que ver si nos importa o no esperar. Por supuesto que nos importa esperar, si no, la mejor solución sería esperar hasta que llegue el autobús… aunque no llegue nunca!
  2. Suponer que es proporcional el tiempo que esperamos con el “peso” o importancia que le damos. Por ejemplo, 1 punto por un minuto. Descarto el tema de que el peso crezca exponencialmente. Hay gente que se desespera exageradamente conforme pasa el tiempo, no va a ser el caso, pasado un tiempo habría un ataque al corazón y eso no nos interesa. Hay que saber esperar, como en cualquier situación de la vida.
  3. Saber si nos importa andar o no. Parece que es bastante humillante acabar yéndose “a pata” ¡Pero no! Si hay que irse andando, asumamos que no nos importa. En la vida las alternativas hay que tomarlas con decisión, sin miramientos.

Asumiendo esto, podemos resolver el problema. Ahora bien, ¿cuál es la solución?

Diseñado por j david macor.com. WP Theme & Icons originales por N.Design Studio. Traducido por Trazos Web.
Entradas RSS Comentarios RSS Iniciar sesión