Este es mi primer post en la sección de Matemáticas. He sido redirigido aquí de StackOverflow, los usuarios de allí me propuso pedir aquí.
Esto puede parecer un poco complejo a primera vista, pero después de todo no hay nada especial.
Estamos en un poker touranment, hay 'n' jugadores, cada uno tiene una pila de fichas. Sólo hay 'p' lugares para ser pagados al final del torneo.
Queremos aplicar una fórmula matemática para convertir a los jugadores reales' pilas en dinero. Por lo que llamamos "capital" de la probabilidad de cada jugador para terminar el torneo en que pagó cada lugar.
Voy a plantear la hipótesis de que hay 4 jugadores (P1,P2,P3,P4) y 3 paga lugares:
La equidad en el 1er lugar es:
$eq1_1 = ($P1_stack / $total_chips);
$eq2_1 = ($P2_stack / $total_chips);
$eq3_1 = ($P3_stack / $total_chips);
$eq4_1 = ($P4_stack / $total_chips);
La equidad en el 2do lugar:
Para calcular el capital de cada jugador en el 2do lugar tenemos a la hipótesis de que cada uno de los remanentes de los jugadores ha ganado el primer premio, reste su(el ganador) de la pila del total de fichas, dividir el jugador 2 fichas por los remanentes de los chips, y multiplicar este número por la probabilidad(la equidad en 1er premio del jugador que ganó el 1er premio). Yo sé, cerebros' explosiones se han reportado aquí.
//-if P2 wins the tornament
$eq1_2 = $eq2_1*($P1_stack/($total_chips-$P2_stack));
//-if P3 wins the tornament
$eq1_2 = $eq1_2 + $eq3_1*($P1_stack/($total_chips-$P3_stack));
//-if P4 wins the tornament
$eq1_2 = $eq1_2 + $eq4_1*($P1_stack/($total_chips-$P4_stack));
si hubiera habido más jugadores el ciclo debería haber continuado.
La equidad en el 3er lugar
Si su cerebro no ha explotado aún, después de leer esto :p Para calcular P1 equidad en el 3er lugar tenemos a: 1) Restar el ganador Y el segundo ganador de pilas de el total de fichas. 2) Reste P1 pila de la cantidad que tenemos. (Remainingstack) 3) Calcular el capital de la segunda ganador en segundo lugar después de que el ganador ha sido la hipótesis. 4) Multiplicar el número de tenemos (3)(P1_stack/ Remainingstack)la Equidad en el ganador en el 1er lugar.
He escrito un código de trabajo hasta ahora, pero sólo funciona si hay 3 pagado colocado. Me gustaría modificarlo para obtener más elegante y versátil forma de lograr equidad incluso si el pago lugares son más de 3.
Este es mi código: http://codepad.org/Q62l2wfv
Yo no soy un experto programador, pero tal vez de hacerlo con una llamada recursiva, debería ser más rápido y la equidad en 4º, 5º, 6º lugar se puede calcular sin dificultad.