


"""simple docstring"""



import unittest
from timeit import timeit
def     UpperCAmelCase    (					_lowercase   :      int ,      _lowercase   :      int  )	->   int:


	"""simple docstring"""




	lowerCAmelCase_			       = first_num if first_num >= second_num else second_num
	lowerCAmelCase_			       = max_num
	while (common_mult % first_num > 0) or (common_mult % second_num > 0):
		common_mult += max_num
	return common_mult
def     UpperCAmelCase    (					_lowercase   :      int ,      _lowercase   :      int  )	->   int:


	"""simple docstring"""




	return b if a == 0 else greatest_common_divisor(b % a ,      _lowercase  )
def     UpperCAmelCase    (					_lowercase   :      int ,      _lowercase   :      int  )	->   int:


	"""simple docstring"""




	return first_num // greatest_common_divisor(_lowercase ,      _lowercase  ) * second_num
def     UpperCAmelCase    (					)	->   List[Any]:


	"""simple docstring"""




	lowerCAmelCase_			       = (
	    '''from __main__ import least_common_multiple_slow, least_common_multiple_fast'''
	)
	print(
	    '''least_common_multiple_slow():''' ,      timeit('''least_common_multiple_slow(1000, 999)''' ,      setup=_lowercase  ) ,      )
	print(
	    '''least_common_multiple_fast():''' ,      timeit('''least_common_multiple_fast(1000, 999)''' ,      setup=_lowercase  ) ,      )







class       __a	(   unittest.TestCase       ):
				lowerCamelCase    :					List[str] 					=(
				    (10, 20),
				    (13, 15),
				    (4, 31),
				    (10, 42),
				    (43, 34),
				    (5, 12),
				    (12, 25),
				    (10, 25),
				    (6, 9),
				)
				lowerCamelCase    :					str 					=(20, 195, 124, 210, 1462, 60, 300, 50, 18)







				def     lowerCamelCase_    (   self      ):

					'''simple docstring'''






					for i, (first_num, second_num) in enumerate(self.test_inputs      ):
						lowerCAmelCase_			       = least_common_multiple_slow(UpperCAmelCase			,  UpperCAmelCase      )
						lowerCAmelCase_			       = least_common_multiple_fast(UpperCAmelCase			,  UpperCAmelCase      )
						with self.subTest(i=UpperCAmelCase      ):
							self.assertEqual(UpperCAmelCase			,  self.expected_results[i]      )
							self.assertEqual(UpperCAmelCase			,  self.expected_results[i]      )


if __name__ == "__main__":
		benchmark()
		unittest.main()



"""simple docstring"""



import doctest

import projectq
from projectq.ops import H, Measure
def     UpperCAmelCase    (					_lowercase   :      projectq.cengines._main.MainEngine  )	->   int:


	"""simple docstring"""




	lowerCAmelCase_			       = quantum_engine.allocate_qubit()
	H | qubit
	Measure | qubit
	return int(_lowercase  )


if __name__ == "__main__":
		doctest.testmod()

		# initialises a new quantum backend
		lowercase_							 =       projectq.MainEngine()

		# Generate a list of 10 random numbers
		lowercase_							 =       [get_random_number(quantum_engine) for _ in range(10)]

		# Flushes the quantum engine from memory
		quantum_engine.flush()

		print('Random numbers', random_numbers_list)