Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import itertools
- import random
- def shuffle(cards):
- num = cards[0]
- return [cards[i] if i > num-1 else cards[num-1-i] for i in range(len(cards))]
- def finish_shuffling(cards):
- num_iterations = 0
- while cards[0] != 1:
- cards = shuffle(cards)
- num_iterations += 1
- return num_iterations
- def final_calc(deck_size):
- results = {}
- highest = 0
- for cards in itertools.permutations(range(1,deck_size+1)):
- num = finish_shuffling(cards)
- if num in results:
- results[num] += 1
- else:
- results[num] = 1
- if num > highest:
- highest = num
- print cards
- print num
- print '\n'
- return results
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement