Supongamos que nuestro intervalo, min..max , es de 1..10.
Deje que ambos A y B elijan un número aleatorio de un rango adecuadamente grande, por ejemplo, 10 * max a 90 * max . Denotemos esto [matemáticas] Z {a} [/ matemáticas] y [matemáticas] Z {b} [/ matemáticas], respectivamente. Deje que A y B intercambien [matemática] Z {a} [/ matemática] y [matemática] Z {b} [/ matemática], sin revelarlos a Z.
Ahora, A y B cada uno nomina su elección de número del 1 al 10. Llamémoslos [math] a [/ math] y [math] b [/ math] por simplicidad.
Ahora, A calcula [matemáticas] Z {a} + Z {b} + a [/ matemáticas]. B calcula [matemáticas] Z {a} + Z {b} + b [/ matemáticas]. Sin revelar ninguno de los términos individuales , A y B presentan sus sumas de respeto a Z.
- Cómo encontrar el punto máximo en un polígono convexo usando la búsqueda ternaria
- Cómo encontrar si un número entero ‘M’ es divisible por ‘N’ (número entero) o no sin usar la operación de división / módulo y tampoco se permiten bucles
- ¿Cuál es más lento entre: encontrar el inverso de una matriz y el determinante de una matriz? ¿Por qué?
- Cómo calcular la distribución de una variable aleatoria [matemática] Z [/ matemática] compuesta de [matemática] n [/ matemática] variables aleatorias independientes [matemática] X_i [/ matemática] con funciones de distribución continua arbitrarias
- ¿Cuáles son algunas situaciones inesperadas en las que se utilizan números triangulares en algoritmos?
Z, sin revelar ninguna de las sumas , simplemente tiene que verificar si ambas sumas son iguales.
Si lo son, entonces todo el proceso comienza de nuevo.
Si las sumas son diferentes, entonces A y B han elegido números diferentes y ahora pueden revelar sus elecciones.