for i in range(1, n):
    nextn = min(candidates)
nums[i] = nextn
for index, val in enumerate(candidates):
    if val == nextn:
        candidates_indexes[index] += 1
candidates[index] = bases[index] * nums[candidates_indexes[index]]
print(nums)
как генерировать числа с учетом их простых множителей, но с неизвестными показателями?