(Sacado de reddit.)
Este es un juego al que mi padre solía jugar conmigo y con mis hermanos. Mi padre pensaba dos enteros positivos y nos daba su suma, su diferencia (positiva) y su producto, pero advirtiéndonos de que solo dos de estas cantidades eran correctas. El objetivo era determinar qué valores podían tomar los dos números que había pensado.
Por ejemplo, si nos dice que la suma es 5, el producto es 2 y la diferencia es 1, entonces habría dos posibilidades. (2,3) cumple la suma y la diferencia, y (1,2) cumple el producto y la diferencia. Ningún par cumple con la suma y el producto, por lo que éstas son las dos únicas respuestas.
Ahora, tras muchos años, mis dos hermanos y yo tenemos cada uno dos hijas de edades comprendidas entre 7 y 19 años inclusive. Todas sus edades son diferentes. En el cumpleaños de mi hija pequeña, estábamos todos juntos y mi padre anunció que quería jugar al viejo juego de dos verdades y una mentira por última vez. Nos dio una suma, un producto y una diferencia, como de costumbre. Para deleite de todos, había 3 pares de números que cumplían las condiciones. Estos tres pares eran las edades de mis dos hijas y de mis sobrinas.
¿Qué edades tenían las seis niñas en el cumpleaños de mi hija pequeña?
Comentarios
#29, pues sí, estaba ya a huevo. Que lo corrobore #0.
#1 Gracias...
#0 ¿conoces el sub
problemas ?
#3 Creo que si no lo conociera no hubiera publicado este meneo en él. Llámame loco.
#4 No, me pregunto cómo llegaste, que te interesara es lo que me sorprende
Tengo un primer paso.
Una de las parejas no cumple el producto, otra no cumple la suma y otra no cumple la diferencia
Los pares que pueden tener el mismo producto son
16*7 =14*8
18*8=9*16
18*10=12*15
Esas son las tres únicas candidatas a probar las sumas y diferencias. Sigo trabajando en ello.
#5 por cierto que lo que me hace asignar claramente entre sumas y diferencias y productos es que los rangos de resultados están muy separados unos de otros. Las diferencias son menores de 12, las sumas van de 15 a 26 y los productos no bajan de 56, así que los números dados son automáticamente asignables a la operación.
Y encontrar los pares de iguales es fácil pensando las factorizaciones.
#5 ¿Cómo has encontrado esas parejas? ¿Y cómo demuestras que son las únicas candidatas?
#8 Son parejas de números enteros comprendidos entre 7 y 19, todos distintos, a los sumo tendría que explorar en plan combinatorio todos los que se puedan hacer 2 a 2, no son tantos, pero además puedo saber que si está el 7 debe estar el 14 para tener el factor primo 7, el 11 el 13 el 17 y el 19 no se pueden solapar. A lo mejor me he despistado, pero son los pares que he encontrado en esta lista.
#9 Vale, me he despistado 15*8=12*10 también es candidato
#11, creo que te ha faltado un par de pares a considerar para producto, que a mi me salen 5 posibilidades: 7-18 y 9-14.
Con este caso y tus 4 creo que están todos los posibles. Y además tiene pinta de que estos son los buenos, con tus casos efectivamente salían que paridad de suma y resta son distintos.
#26 Gracias, despiste, ya me habían contado mi lapsus Me precipité descartando el 7. Pero el razonamiento es correcto salvo eso, ¿ no?
#27, solo he mirado los pares por productos, y sí, se podría descartar directamente cualquiera de las otras parejas de pares por lo de la paridad. Pero en este caso saldrían sumas y restas impares con lo que podría haber solución (no he terminado de pensarlo). Si que sí, los otros bien descartados.
#28
Mirados los fallos de percepció incluyo:
25*11=23*5= 126
Quedan las posibilidades de trío de números dicho por el abuelo:
25 5 126
23 11 126
Resuelvo un par de siestemas que salen
a + b =25
a - b =5
Edades de 15 y 10
a + b =23
a - b =11
Edades de 17 y 6. Pero 6 es fuera de rango.
#22 #26 #29 ¡Correcto! Las edades son (7,18), (9,14), (10,15) y los números del abuelo son 25 (suma), 5 (diferencia) y 126 (producto).
#8 Puedes buscar los iguales en la parte de arriba de las tablas de multiplicar.
7 8 9 10 11 12 13 14 15 16 17 18 19
7 49 56 63 70 77 84 91 98 105 112 119 126 133
8 56 64 72 80 88 96 104 112 120 128 136 144 152
9 63 72 81 90 99 108 117 126 135 144 153 162 171
10 70 80 90 100 110 120 130 140 150 160 170 180 190
11 77 88 99 110 121 132 143 154 165 176 187 198 209
12 84 96 108 120 132 144 156 168 180 192 204 216 228
13 91 104 117 130 143 156 169 182 195 208 221 234 247
14 98 112 126 140 154 168 182 196 210 224 238 252 266
15 105 120 135 150 165 180 195 210 225 240 255 270 285
16 112 128 144 160 176 192 208 224 240 256 272 288 304
17 119 136 153 170 187 204 221 238 255 272 289 306 323
18 126 144 162 180 198 216 234 252 270 288 306 324 342
19 133 152 171 190 209 228 247 266 285 304 323 342 361
#5 Eh, que te confundes. Yo no soy quien ha publicado el meneo.
¿También me vas a preguntar a mí cómo he llegado aquí? ¿Hay que fichar en alguna parte?
#17 Nada, despistes. Me sorprende, eso es todo, creí que esto era para los 3 frikis habituales y el resto pasaban...
#18 Bueno, alguna vez podemos pasar tres frikis más. Es un lugar agradable de visitar.
#24 Pensar problemas en lugar de insultarse mutuamente es para frikis, pero mola.
#25 Bueno, si quieres podemos insultarnos también.
Basta con tratar de adivinar que familiares son de izquierdas y cuáles de derechas.
Me parece un problema muy bueno para aplicar programación con restricciones, así que si en algún momento de la vida tengo un par de horas para instalar Prolog o para probar otro sistema, haré un intento.
Imagino que no es el objetivo de estos problemas, pero en este caso me parece muy útil para eso. Seguro que lo resolvéis antes, pero quería comentar para poder buscar entre mis comentarios "programación con restricciones" y encontrarlo
#37 El objetivo de estos problemas es que cada cual los disfrute a su estilo, así que dale.
Tengo un problema, no me salen las cosas por paridad...
Tengo las siguientes candidatas a ternas suma-diferencia-producto y resulta que todas tienen la suma y la diferencia de distinta paridad, con lo que no pueden ser enteras las edades que me queda por averiguar.
23 6 112
22 9 112
26 7 144
25 10 144
28 3 180
27 8 180
23 2 120
22 7 120
Creo que el problema es imposible, o que algún dato no es exacto. si empezáramos
#12 No es imposible. Se te ha debido de pasar alguna combinación 😉
#13 Pues no la encuentro, la verdad, lo dejo y mañana lo veo con mirada fresca.
#14 ¿Cómo se puede conseguir que la suma y la diferencia tengan la misma paridad?
#15 Resumo mi razonamiento.
Los tres números tienen que ser resultado de productos de dos edades en dos ocasiones distintas. He buscado los números que lo cumplen. Dasos los 3 números se asigna a la operación correspondiente por estar en rangos distintos.
Razono despacio con el 112 para ver cómo llego a sus dos ternas:
112=7*16=14*8
Si la suma es correcta en 7+16 será 23 y la resta será correcta en 14-8=6. Los números dados por el abuelo serían 23, 6, 112.
Si la corrección de suma y resta se cambian de pareja de números será 16-7=9 y 14+8=22
Análogamente con los otros 3 resultados de productos iguales.
Pero es que en todas las parejas que he encontrado hay una pareja de impar-par y otra de par-par, así que no puede ser que la suma y el producto tengan la misma paridad.
He omitido los cuadrados porque dice que todas las edades son distintas.
La única solución que se me ocurre es que haya "trampa" y la cumpleañera se cuente con dos edades distintas antes y después de la hora del nacimiento.
#16 No hay trampa ni cartón.
En el caso que has dado, los números cuyo producto es 112 son (7, 16) y (14, 8 ). Uno es impar y los demás pares. Así es imposible que las sumas y las diferencias tengan la misma paridad.
Piensa al revés. Dadas dos parejas de números, ¿cómo se consigue que las sumas y las diferencias tengan la misma paridad?
#14 Hay 5 dobles pares de números cuyo producto sean iguales. Y justo has encontrado los 4 que tienen paridad distinta. También ha sido mala suerte.
#20 Despiste, que es lo que me caracteriza, pero es que estoy trabajando en otra cosa a la vez... También es que el que mucho abarca poco aprieta. ¿cuál me falta?
#21 que curioso, meneame tiene un limite inferior de caracteres: 9*14=7*18
#22 Gracias
no habia leido el final.
#35 Un simple array de tres posiciones, nos ahorra las uniones...
comienzan rellenados a -1
Si un par va a insertar un resultado en la posición 1 y hay un -1, se le deja hacerlo.
Cada par insertar en ese array de tres, dos numeros.
Si había algo distinto a un -1, y lo que vamos a insertar es diferente a lo que había en esa posición, paramos por completo y pasamos a probar la siguiente terna de tres pruebas.
Análisis previo:
[1] -> Tenemos el conjunto de naturales:
a) la resta la consideramos como valor absoluto, y así da igual el orden de los operandos.
b) la solución son 6 números diferentes de entre esos trece posibles del conjunto, no sé si la fórmula del coeficiente binomial está bien aplicada aquí , pero me dan 1716 combinaciones de 6 números diferentes, posibles.
Luego hay que hacer pares diferentes con 6 números: eso son 15 pares posibles... pero hay que construir los tres pares sin elementos en común, y la combinatoria se me da como el culo... así que a cada posible par, miraremos a ver "posibilidades de segundo par" y el tercer par serían los dos que sobran: 15 primeros pares X 6 segundos posibles pares... TOTAL:
1716 x 15 x 6 = 154440 posibilidades, para "formar tres pares".
[2] -> A cada terna de 3 pares hay que hacerla pasar por este test. Cada uno de los tres debe pasar al menos una de estas pruebas: (Este punto 2 hay que hacerlo 154440 veces)
a) n1+n2 = R1 n1 *n2 = R2 -> A esta prueba la llamaremos P1
b) n1+n2 = R1 n1-n2| = R3 -> A esta prueba la llamaremos P2
c) n1*n2 = R2 n1-n2| = R3 -> A esta prueba la llamaremos P3
Tenemos 6 números, ya distribuidos en pares concretos:
(A,B) (C,D) (E,F)
[3] -> Hacemos las operaciones:
P1ab P1cd P1ef
P2ab P2cd P2ef
P3ab P3cd P3cd
Cada prueba provoca un conjunto de dos naturales. DESCONOCEMOS R1 R2 y R3... pero eso no prohibe que puedan ser un mismo natural.
Hay 27 combinaciones de uniones del tipo:
(Piab U Pjcd U Pkef) siendo i,j,k mayores que cero y menores que 4 (1 a 3)
SON SOLUCIONES VÁLIDAS todas aquellas en los que el cardinal de la unión sea igual o menor que tres.
Y eso son 9 + 27 operaciones: 154440 * 36 = 5, 559, 840
Yo he hecho un algoritmo más complejo, y mi i7 daba resultados en 4 horas, para 10 000 000 de operaciones ( y eso que hacia una doble vuelta, en realidad 20 millones... y con números de más de 100 digitos... esto debería durar menos.)
#34 El cerebro me peta un poco... pq "creo" que hay una condición AUN más restrictiva.. no estoy seguro.. pq aqui ya se me frió el cerebro... es respecto a que uno de un valor para R1 y otro de el mismo número para R2, pero diferente para R1.
Se soluciona con una pequeña estructura de datos para ir sobre seguro. (un map que relaciona cada resultado de prueba con el concepto Ri... así cada par debe ofrecer el mismo natural para los Ri donde pasa las pruebas).. pero bueno... cuestión de dicarle unos minutos más para ver si es necesario. Aqui me rendí .
Si tenemos tres números, R1= 5 R2=10 R3 =4
No es lo mismo que otro par ofrezca el mismo trio pero desordenado: R1=4 R2=10 R3=5 (vamos... que solo serían dos de ellos.. y me da que igual SI que es necesario, pero no complica mucho la cosa)
Las edades de las niñas son a, b, c, d, e, f tal que, son distintas, entre 7 y 19 y cumplen que:
a*b=X, c*d=X
a+b=Y, e+f=Y
d-c=Z, f-e=Z
6 ecuaciones y 9 incógnitas, pero como son números enteros entre 7 y 19 el problema esta mucho mas restringido.
De entre los posibles valores de a-e, los posibles valores de X con sus parejas son:
112 , (7,16) (8,14)
120, (8,15) (10,12)
126, (7,18) (9,14)
144, (8,18) (9,16)
180, (10,18) (12,15)
Cada uno de estos 5 sistemas da dos posibles soluciones de Y, Z -> 10 combinaciones
Z Y
6 23
9 22
2 23
7 22
5 25
11 23
7 26
10 25
3 28
8 27
Se suman todos los números entre 7 y 19 con diferencias 6, 9, 2 etc, y se comprueban si alguno da la suma deseada, con Excel no se tarda mucho. La única pareja que cumple una de las combinaciones es (10,15) que cumple 5 25.
Así pues, las parejas son (7,18), (9,14) y (10,15) y estas son las edades. Y ya que estamos la solucion a las ecuaciones es:
a = 7
b = 18
c = 9
d = 14
e = 10
f = 15
X = 126
Y = 25
Z = 5
Como lo veis?