All pastes #452047 Raw Edit

Anonymous

public text v1 · immutable
·published 2007-04-22 00:41 UTC
rendered paste body
parameters: sorted list of five card hand
cards are integers denoted by value*10 +suit(0123)

numpair = 0
num= 0
strt = 0
flush = 0
for(i 1->4)
{
if(card[i]/10==card[i-1]/10)
{
   numpair++
   num+=numpair+5
}
else
   numpair= 0

if(card[i]/10==card[i-1]/10+1)
   strt +=1

if(card[i]%10==card[i-1]%10)
   flush +=1
}
num2 = (flush==4)?35:0+(strt==4)?30:0
return max(num,num2)*1000 + card[4]  //last card for highest card val...


this returns the following vals

strtflush 32
4of a kind 21
fullhouse 19
flush 17
strt 15
3of a kind 13
2pair 12
1pair 6

note how values are in order of precedence