Erzeugen von Zufallszahlen, die zu einem bestimmten Wert summiert werden
In Python gibt es eine einfache Lösung, um n Pseudozufallszahlen zu erstellen, die, wenn summiert, einen vordefinierten Zielwert erreichen und gleichzeitig sicherstellen, dass alle möglichen Kombinationen mit gleicher Wahrscheinlichkeit auftreten.
Die Methode beinhaltet die Verwendung der Funktion random.sample, um einen geordneten Satz von n-1 eindeutigen Zahlen zwischen 1 und dem auszuwählen Zielsumme. Die ausgewählten Zahlen dienen als Teiler und unterteilen das Ziel effektiv in n positive ganze Zahlen.
Betrachten Sie das Beispiel der Generierung von 4 Zufallszahlen, die sich zu 40 summieren. Die generierten Teiler könnten [4, 11, 24] sein (ausgewählt aus zufällig). .sample(range(1, 40), 3)). Die entsprechenden Zahlen, deren Summe 40 ergibt, werden als [4, 7, 13, 6] berechnet.
Um sicherzustellen, dass jede mögliche Kombination die gleiche Wahrscheinlichkeit hat, ist es wichtig, die Teiler auszuwählen aufsteigende Reihenfolge. Darüber hinaus lässt sich dieser Ansatz mühelos an unterschiedliche Zielwerte anpassen und ist somit für verschiedene Szenarien vielseitig einsetzbar.
Das obige ist der detaillierte Inhalt vonWie generiert man in Python Zufallszahlen, deren Summe einen bestimmten Wert ergibt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!