Advertisement
Hydreigon_Lord

Elimination Odds Calculator for Algicosathlon, Etc.

Sep 18th, 2016
2,431
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.06 KB | None | 0 0
  1. import random
  2. sims=1000000 # Number of simulations to run
  3. num=21 # Number of contestants remaining
  4. toadd=[0,1,2,3,4,6,8,10,12,15,20,25,30,35,40,45,50,60,70,80,100,125,150,175,200,250,300,400,500,600,750,1000] # Scores for next event
  5. multFactor=2**12 # What to multiply the scores by
  6. loseCount=list()
  7. for i in range(num):
  8.     loseCount.append(0)
  9. for i in range(sims):
  10.     swap=list()
  11.     taken=list()
  12.     scores=[362316,358504,337394,300163,288051,220352,177754,169334,148832,148667,135386,135052,128540,128060,123618,122407,105775,105671,97714,97235,87663] # Contestant scores
  13.     for k in range(num):
  14.         swap.append(-1)
  15.         taken.append(False)
  16.     for k in range(num):
  17.         while swap[k]==-1 or taken[swap[k]]:
  18.             swap[k]=random.randint(0,num-1)
  19.         taken[swap[k]]=True
  20.         scores[k]+=round(toadd[swap[k]]*multFactor)
  21.     recordLow=scores[0]*1000000
  22.     recordHolder=0
  23.     for k in range(num):
  24.         if scores[k]<recordLow:
  25.             recordLow=scores[k]
  26.             recordHolder=k
  27.     loseCount[recordHolder]+=1
  28. print(loseCount)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement