Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from random import randrange
- zero = []
- one = []
- two = []
- three = []
- four = []
- five = []
- six = []
- seven = []
- eight = []
- nine = []
- array = []
- decimal_place = 0
- def generate_random_array(size, bound):
- global array
- for i in range(size):
- array.append(randrange(1,bound))
- def get_digit(num):
- global decimal_place
- return (num//pow(10,decimal_place)) % 10
- def separate():
- global array, decimal_place
- for num in array:
- digit = get_digit(num)
- if digit == 0:
- zero.append(num)
- elif digit == 1:
- one.append(num)
- elif digit == 2:
- two.append(num)
- elif digit == 3:
- three.append(num)
- elif digit == 4:
- four.append(num)
- elif digit == 5:
- five.append(num)
- elif digit == 6:
- six.append(num)
- elif digit == 7:
- seven.append(num)
- elif digit == 8:
- eight.append(num)
- elif digit == 9:
- nine.append(num)
- array = [] # reset
- def rebuild():
- global zero, one, two, three, four, five, six, seven, eight, nine, array
- array = zero + one + two + three + four + five + six + seven + eight + nine
- if (len(zero) == len(array)):
- return True
- zero = []
- one = []
- two = []
- zero = []
- three = []
- four = []
- five = []
- six = []
- seven = []
- eight = []
- nine = []
- return False
- def solve():
- global array, decimal_place
- while(True):
- separate()
- is_done = rebuild()
- if (is_done):
- break
- else:
- decimal_place += 1
- generate_random_array(20, 1000)
- solve()
- print(array)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement