Ihre Aufgabe ist es, die erwartete Gewinnchance für 2 Spieler in einem Spiel mit jeweils eigener ELO-Bewertung zu berechnen . Spieler A hat ELO R a und Spieler B hat ELO R b
Die erwartete Punktzahl für Spieler A (E a ) beträgt: 1 / (1 + 10 (R b - R a ) / 400 ). Für Spieler B (E b ) gibt es eine ähnliche Gleichung : 1 / (1 + 10 (R a - R b ) / 400 ).
Wenn Sie eine kopierbarere Version wünschen: 1 / (1 + 10^((a-b) / 400))
E a + E b sollte gleich 1 sein.
Daher ist die Punktzahl für einen Spieler die erwartete Chance, ein Match zu gewinnen, dezimal.
Ihr Programm / Ihre Funktion sollte zwei Eingaben annehmen, die ELO von Spieler A und die ELO von Spieler B, und die jeweilige Gewinnchance im Dezimalformat drucken / zurückgeben. Die Ausgabe muss sich zu eins addieren und Sie müssen auf mindestens 5 Dezimalstellen genau sein ( 0.00000). Nach 5 Dezimalstellen haben Sie möglicherweise ungenaue Ziffern, vorausgesetzt, die beiden Ausgänge ergeben immer noch eine.
Beispiele:
1200 2100 -> 0.005591967 0.994408033
1 1 -> 0.5 0.5
60 20 -> 0.557312 0.442688
9999 9998 -> 0.501439 0.498561
9999 1 -> 0.999999 0.000001
Im letzten Testfall verwenden einige Antworten wissenschaftliche Exponentiation, um den Wert darzustellen. Dies ist nicht gültig.
Sie können in Testfall 3 hier sehen, dass dies 0.557312nicht ganz genau ist, da das a 2sein sollte 1, aber dies ist in Ordnung, da es nach fünf Dezimalstellen liegt und die Ausgaben immer noch eins ergeben.
Dies ist ein Beispiel für eine ungültige Ausgabe:
9999 9998 -> 0.5014391117091516, 0.49856088829084844
Dies scheint auf den ersten Blick die Anforderungen zu erfüllen, aber die Zahlen summieren sich 1.00000000000000004und daher ist die Ausgabe ungültig.
Nachgestellte Nullen in der Ausgabe sind in Ordnung.
Sie können davon ausgehen, dass der ELO eines Spielers immer größer als 0 ist und niemand einen ELO von mehr als 9999 hat.
Das Eingabe- und Ausgabeformat ist flexibel, aber die Eingabe und Ausgabe muss sich noch in Basis 10 befinden.
Da dies Code-Golf ist , gewinnt die Antwort mit der niedrigsten Byteanzahl!
[9999, 998]die meisten Antworten fehlschlagen.
9999, 1einschließlich meiner eigenen, fehlschlagen , daher kann ich sie nicht posten :-(