&0560

This program has been disqualified.


Author&&&
Submission date2011-06-20 19:41:55.896570
Rating4391
Matches played5
Win rate40.0

Source code:

import random
#Weighted random beat previous inputs
def weighted_choice(C, p):
    x = random.random()
    for elmt in range(len(C)):
        if x <= p[elmt]:
            return C[elmt]
        x -= p[elmt]

if not input:
	beat={'R':'P','P':'S','S':'R','':'R'}
	output=random.choice("RPS")
	history=""
	AMPERSAND_SECRET_SAUCE = "SSPPRSPSPRPRPPSRRSRPPSRSRSSSSSSPPPPSRPRSRPSPRPSPRR"
else:
	history+=input
	L=len(history)
	if AMPERSAND_SECRET_SAUCE == history:
		output = 'S'
	else:
		p = q = range(1,L+1)
		for i in range(L):
			p[i]=p[i]**(0.560)
			q[i]=q[i]**(0.560)
		q=float(sum(q))
		for i in range(L):
			p[i]/=q
		output=beat[weighted_choice(history,p)]