Is straight

is_straight

1 Python[ | ]

find 5 straight cards in 7 cards
def is_straight(ranks):
    for i in (2, 1, 0):
        straight = list(range(ranks[i], ranks[i]+5))
        if( ranks[i:i+5] == straight ): return straight[4] 
    return False

print( is_straight( [1,2,3,4,5]) )
# 5
print( is_straight( [1,4,4,4,5]) )
# False
print( is_straight( [1,1,1,4,5]) )
# False
print( is_straight( [4,5,6,7,8,9,10] ) )
# 10
find 5 straight cards in N cards
def is_straight(ranks):
    if len(ranks) < 5: return False
    for i in range(len(ranks)-5, -1, -1):
        straight = list(range(ranks[i], ranks[i]+5))
        if( ranks[i:i+5] == straight ): return straight[4] 
    return False

print( is_straight( [1,2,3,4]) )
# False
print( is_straight( [1,2,3,4,5]) )
# 5
print( is_straight( [1,4,4,4,5]) )
# False
print( is_straight( [1,1,1,4,5]) )
# False
print( is_straight( [4,5,6,7,8,9,10] ) )
# 10

2 같이 보기[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}