4 votos

Halla los resultados de la carrera utilizando las 5 condiciones dadas.

Hay cinco competidores A, B, C, D y E y participan en una carrera que otorga medallas de oro, plata y bronce. Cada una de las siguientes afirmaciones compuestas sobre la carrera es falsa, aunque una de las dos cláusulas de cada una puede ser verdadera.

1. A no ganó el oro, y B no ganó la plata.
2. D no ganó la plata, y E no ganó el bronce.
3. C ganó una medalla, y D no lo hizo.
4. A ganó una medalla, y C no lo hizo.
5. D et E ambos ganaron medallas.

¿Quién ganó cada una de las medallas?

Gracias de antemano. Cualquier ayuda será apreciada :)

4voto

Eric Lippert Puntos 1561

Me he encontrado con muchos problemas de este tipo (pero no he sido capaz de resolverlos :P) ¿Puedes darme algún consejo para solucionar estos problemas?

Empezaría por convertir todos los enunciados de falsos en verdaderos, recordando que "o" incluye la posibilidad de que ambos sean verdaderos.

False: A didn't win the gold, and B didn't win the silver.
True:  A won the gold or B won the silver. 

False: D didn't win the silver, and E didn't win the bronze.
True:  D won the silver or E won the bronze.

False: C won a medal, and D didn't.
True:  C won no medal or D won a medal.

False: A won a medal, and C didn't.
True:  A won no medal or C won a medal.

False: D and E both won medals.
True:  D won no medal or E won no medal.

Así que ahora tenemos cinco afirmaciones verdaderas:

1) A won the gold or B won the silver.
2) D won the silver or E won the bronze.
3) C won no medal or D won a medal.
4) A won no medal or C won a medal.
5) D won no medal or E won no medal.

Ahora adivina. Supongamos que A no ganó el oro. Haz un gráfico:

      GUESS ONE CHART
      GOLD SILVER BRONZE NONE
   A   NO
   B 
   C
   D
   E

Ahora completa lo que sabemos en ese gráfico. Como A no ganó el oro, B debe haber ganado la plata:

      GUESS ONE CHART
      GOLD SILVER BRONZE NONE
   A   NO
   B       YES
   C
   D
   E

Si B ganó la plata, entonces B no ganó nada más, y nadie más ganó la plata.

      GUESS ONE CHART
      GOLD SILVER BRONZE NONE
   A   NO   NO
   B   NO   YES     NO     NO
   C        NO
   D        NO
   E        NO

Ahora mira la declaración 2. En nuestro mundo hipotético, D no ganó la plata, así que E debe haber ganado el bronce:

      GUESS ONE CHART
      GOLD SILVER BRONZE NONE
   A   NO   NO     NO
   B   NO   YES    NO     NO
   C        NO     NO
   D        NO     NO
   E   NO   NO     YES    NO

Ahora bien, por la afirmación 5 sabemos que D no ganó ninguna medalla en este mundo hipotético. No podemos rellenar el resto de la columna NINGUNO con NO porque dos personas no ganaron ninguna medalla.

      GUESS ONE CHART
      GOLD SILVER BRONZE NONE
   A   NO   NO     NO
   B   NO   YES    NO     NO
   C        NO     NO
   D   NO   NO     NO     YES
   E   NO   NO     YES    NO

Ahora, mirando el gráfico, la única persona que queda para ganar el oro es C, y A no ganó ninguna medalla. Así que rellénalo:

      GUESS ONE CHART
      GOLD SILVER BRONZE NONE
   A   NO   NO     NO     YES
   B   NO   YES    NO     NO
   C   YES  NO     NO     NO
   D   NO   NO     NO     YES
   E   NO   NO     YES    NO

OK, hemos completado el gráfico para el mundo en el que A no gana el oro. ¿Cumple todas las condiciones?

1) A won the gold or B won the silver. YES.
2) D won the silver or E won the bronze. YES.
3) C won no medal or D won a medal. NO!

No hemos cumplido una condición, así que nuestra suposición debe haber sido errónea. Ahora conocemos un nuevo hecho:

6) A won the gold.

Así que vamos a intentar rellenar el gráfico de nuevo, conociendo este nuevo dato.

      REALITY CHART
      GOLD SILVER BRONZE NONE
   A   YES  NO     NO     NO
   B   NO
   C   NO
   D   NO
   E   NO

Del enunciado 4 sabemos que:

      REALITY CHART
      GOLD SILVER BRONZE NONE
   A   YES  NO     NO     NO
   B   NO
   C   NO                 NO
   D   NO
   E   NO

Del enunciado 3 sabemos que:

      REALITY CHART
      GOLD SILVER BRONZE NONE
   A   YES  NO     NO     NO
   B   NO
   C   NO                 NO
   D   NO                 NO
   E   NO

Y ahora sabemos quién no ganó ninguna medalla:

      REALITY CHART
      GOLD SILVER BRONZE NONE
   A   YES  NO     NO     NO
   B   NO   NO     NO     YES
   C   NO                 NO
   D   NO                 NO
   E   NO   NO     NO     YES

Del enunciado 2 tenemos:

      REALITY CHART
      GOLD SILVER BRONZE NONE
   A   YES  NO     NO     NO
   B   NO   NO     NO     YES
   C   NO   NO            NO
   D   NO   YES    NO     NO
   E   NO   NO     NO     YES

Y eso deja

      REALITY CHART
      GOLD SILVER BRONZE NONE
   A   YES  NO     NO     NO
   B   NO   NO     NO     YES
   C   NO   NO     YES    NO
   D   NO   YES    NO     NO
   E   NO   NO     NO     YES

Ahora comprueba el trabajo:

1) A won the gold or B won the silver. YES.
2) D won the silver or E won the bronze. YES.
3) C won no medal or D won a medal. YES.
4) A won no medal or C won a medal. YES.
5) D won no medal or E won no medal. YES.

Y hemos terminado.

Eso resuelve el problema concreto, pero fíjate en el método general:

  • Escriba todo en términos de afirmaciones verdaderas; razonar a partir de falsedades es difícil.
  • Si no hay suficiente información para resolver el problema directamente, haz una conjetura.
  • Explora las consecuencias de esa suposición. ¿Conducen a una contradicción? Si es así, la conjetura es errónea y has deducido un nuevo hecho.
  • Registra tus conocimientos en una tabla cuidadosamente etiquetada.

Es posible que tengas que hacer varias adivinanzas; lleva un registro de las que has hecho. Si adivinas X, te quedas atascado, adivinas Y y deduces una contradicción, habrás deducido que "si la conjetura X es correcta, entonces la conjetura Y es errónea", no que "X e Y son ambas erróneas". ¿Entiendes por qué?

3voto

Hotwax Puntos 1

Veamos las afirmaciones 3 y 4, en particular la hipótesis de que C pierde. Esto implica que la segunda parte de la afirmación 4 es cierta, lo que significa que la primera parte es falsa: A no ganó ninguna medalla.

En la afirmación 1 A no ganó el oro y eso es cierto, esto implica que es falso que B no ganara la plata, en otras palabras B ganó la medalla de plata.

Ahora en la afirmación 2, D no ganó la plata y eso es cierto, porque sabemos que en realidad fue B quien la ganó, así que de nuevo la segunda mitad es necesariamente falsa: E ganó el bronce.

Ahora sólo queda D, que necesariamente ha ganado el metal dorado, pero esto está en contradicción con la afirmación 5.

Así que al final podemos decir que C ganó una medalla.

Entonces, debido a la afirmación 3, D ganó una medalla.

Debido a la afirmación 5, E no ganó una medalla.

Debido a la afirmación 2, D ganó una plata.

Debido a la afirmación 1, A ganó un oro.

Sabemos que C ganó una medalla, pero debido a los 2 últimos enunciados, sabemos que ganó una medalla de bronce

B necesariamente perdido

2voto

Veritas Puntos 423

Bien, así es como se resuelven estos problemas:

Puesto que las afirmaciones utilizan AND para conectar sus enunciados y sabemos que las afirmaciones son falsas, al menos uno de sus enunciados debe ser falso.

Empezamos por enumerar las posibilidades y organizarlas en triples :


  • 1.1 A no ganó el oro, B ganó la plata.
  • 1.2 A ganó el oro, B no ganó la plata.
  • 1.2 A ganó el oro, B ganó la plata.

  • 2.1 D no ganó la plata, E ganó el bronce.
  • 2.2 D ganó la plata, E no ganó el bronce.
  • 2.3 D ganó la plata, E ganó el bronce.

  • 3.1 C ganó una medalla, D ganó un metal.
  • 3.2 C no ganó medalla, D no ganó medalla.
  • 3.3 C no ganó una medalla, D ganó una medalla.

  • 4.1 A ganó una medalla, C ganó una medalla.
  • 4.2 A no ganó medalla, C no ganó medalla.
  • 4.3 A no ganó medalla, C ganó medalla.

  • 5.1 D ganó una medalla, E no ganó ninguna medalla.
  • 5.2 D no ganó una medalla, E ganó una medalla.
  • 5.3 D no ganó medalla, E no ganó medalla.

Ahora, para cada triple, una de las afirmaciones es verdadera. Por lo tanto, lo que tienes que hacer es elegir un triple. Yo elegiré 4. A continuación, elija una de sus afirmaciones. Elegiré 4.2.

Para la siguiente parte será útil hacer una pequeña tabla booleana:

            A   B   C   D   E
Won Medal |   |   |   |   |   |
No Medal  |   |   |   |   |   |
Gold      |   |   |   |   |   |
Silver    |   |   |   |   |   |
Bronze    |   |   |   |   |   |

Suponiendo que 4.2 sea correcto:

            A   B   C   D   E
Won Medal |   |   |   |   |   |
No Medal  | X |   | X |   |   |
Gold      |   |   |   |   |   |
Silver    |   |   |   |   |   |
Bronze    |   |   |   |   |   |

Hemos terminado con el triple 4, así que debemos elegir otro triple en el que una de las afirmaciones debería ser cierta según lo que sabemos. Sabemos que A y C no tienen medallas así que tenemos que encontrar un triple que tenga relaciones entre A o C y otro jugador.

Aparte del triple 4, el único triple que dice algo sobre A es el primer triple. Sabemos que A no tiene medalla por lo que no puede tener el oro. Por lo tanto 1.1 debe ser correcto.

Actualizamos nuestra tabla:

            A   B   C   D   E
Won Medal |   |   |   |   |   |
No Medal  | X |   | X |   |   |
Gold      |   |   |   |   |   |
Silver    |   | X |   |   |   |
Bronze    |   |   |   |   |   |

Ahora tenemos que elegir uno de los triples restantes, es decir, 2,3 y 5.

En el 5º triple podemos ver que ninguna de las opciones es cierta ya que tanto E como D necesitan ganar una medalla para que la carrera tenga 3 ganadores.

Puesto que una afirmación tiene que ser cierta, pero suponiendo que 4.2 lo fuera, lo correcto nos lleva lógicamente a la conclusión de que no la hay, podemos estar seguros de que 4.2 no puede ser correcta.

Nos limitaremos a comprobar todas las afirmaciones restantes del 4º triple. A saber, 4.1 y 4.3.

Si elige 4.3 y repite el mismo procedimiento , también llegará a una conclusión ilógica. Por lo tanto, 4.1 debe ser la afirmación correcta.

Aquí está el mismo procedimiento para 4.1 sólo para estar seguro:

            A   B   C   D   E
Won Medal | X |   | X |   |   |
No Medal  |   |   |   |   |   |
Gold      |   |   |   |   |   |
Silver    |   |   |   |   |   |
Bronze    |   |   |   |   |   |

Observando el 3er triple podemos ver que 3.1 puede ser la única afirmación correcta. Actualizamos nuestra tabla:

            A   B   C   D   E
Won Medal | X |   | X | X |   |
No Medal  |   |   |   |   |   |
Gold      |   |   |   |   |   |
Silver    |   |   |   |   |   |
Bronze    |   |   |   |   |   |

Observando el 5º triple podemos ver que 5.1 puede ser la única afirmación correcta, por lo que actualizamos nuestra tabla una vez más:

            A   B   C   D   E
Won Medal | X |   | X | X |   |
No Medal  |   |   |   |   | X |
Gold      |   |   |   |   |   |
Silver    |   |   |   |   |   |
Bronze    |   |   |   |   |   |

Si observamos el 2º triple, vemos que 2.2 es la afirmación correcta.

            A   B   C   D   E
Won Medal | X |   | X | X |   |
No Medal  |   |   |   |   | X |
Gold      |   |   |   |   |   |
Silver    |   |   |   | X |   |
Bronze    |   |   |   |   |   |

Finalmente mirando el 1er triple podemos ver que la única afirmación correcta es 1.2 puesto que ya concluimos que D tiene la plata.

            A   B   C   D   E
Won Medal | X |   | X | X |   |
No Medal  |   |   |   |   | X |
Gold      | X |   |   |   |   |
Silver    |   |   |   | X |   |
Bronze    |   |   |   |   |   |

Como sólo 3 pueden ser los ganadores, A tiene el oro, D la plata y C el bronce.

1voto

runeh Puntos 1304

Pista: Por ejemplo, $[A$ o $B]$ es falso si y sólo si $[[$ no $A]$ et $[$ no $B]]$ es cierto. Así que si quieres puedes escribir cinco afirmaciones verdaderas.

La afirmación verdadera derivada de la primera, por ejemplo, es $A$ ganó el oro o $B$ ganó la plata.

1voto

Aasmund Ervik Puntos 49

Simplemente puedes hacer fuerza bruta. Basiscall, tienes que comprobar todas las permutaciones de [0,0,1,2,3]. Para el 3, tienes 5 lugares para elegir. Para el 2 tienes 4. Para el 1 tienes 3. Eso hace que $3\cdot4 \cdot 5 = 60$ posibilidades.

He aquí una solución en Python:

from itertools import permutations

class Medals:
    GOLD = 1
    SILVER = 2
    BRONZE = 3
    NONE = 0

medals = [Medals.GOLD, Medals.SILVER, Medals.BRONZE, Medals.NONE, Medals.NONE]

for A, B, C, D, E in set(permutations(medals)):
    if not (A != Medals.GOLD and B != Medals.SILVER) and \
       not (D != Medals.SILVER and E != Medals.BRONZE) and \
       not (C > Medals.NONE and D == Medals.NONE) and \
       not (A > Medals.NONE and C == Medals.NONE) and \
       not (D > Medals.NONE and E > Medals.NONE):
            print("A:%s B:%i C:%i D:%i E:%i" % (A, B, C, D, E))

Véase ideone para editarlo / ejecutarlo.

Lo que da una única solución posible:

A:1 B:0 C:3 D:2 E:0

Soluciones alternativas

El enunciado del problema no decía que sólo hubiera una medalla de oro. Así que vamos a suponer que hay dos. Esto daría las soluciones:

A:1 B:3 C:1 D:2 E:0
A:1 B:1 C:3 D:2 E:0

Si hay tres medallas de bronce / plata / oro, no hay solución.

Si hay dos medallas de plata, existen las siguientes soluciones:

A:3 B:2 C:1 D:2 E:0
A:1 B:3 C:2 D:2 E:0
A:1 B:2 C:3 D:2 E:0

Si hay dos medallas de bronce, la solución es:

A:1 B:3 C:3 D:2 E:0

Si hay dos medallas de oro y debido a dos medallas de oro no hay medalla de plata, no hay solución.

Si hay dos medallas de plata y debido a dos medallas de plata no hay medalla de bronce, las soluciones son:

A:0 B:2 C:1 D:2 E:0
A:1 B:0 C:2 D:2 E:0

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X