



'''simple docstring'''






from __future__ import annotations

# Define the Gravitational Constant G and the function
A_				:					Union[str, Any]							=      6.6743e-11  # unit of G : m^3 * kg^-1 * s^-2




def        snake_case_   (	lowerCAmelCase_			,  lowerCAmelCase_			,  lowerCAmelCase_			,  lowerCAmelCase_						)->						dict[str, float]:





       '''simple docstring'''


       _UpperCAmelCase    :		Any     	=					mass_a * mass_a

       if (force, mass_a, mass_a, distance).count(0						) != 1:
              raise ValueError("""One and only one argument must be 0"""						)
       if force < 0:
              raise ValueError("""Gravitational force can not be negative"""						)
       if distance < 0:
              raise ValueError("""Distance can not be negative"""						)
       if mass_a < 0 or mass_a < 0:
              raise ValueError("""Mass can not be negative"""						)
       if force == 0:
              _UpperCAmelCase    :		Dict     	=					GRAVITATIONAL_CONSTANT * product_of_mass / (distance**2)
              return {"force": force}
       elif mass_a == 0:
              _UpperCAmelCase    :		Tuple     	=					(force) * (distance**2) / (GRAVITATIONAL_CONSTANT * mass_a)
              return {"mass_1": mass_a}
       elif mass_a == 0:
              _UpperCAmelCase    :		Dict     	=					(force) * (distance**2) / (GRAVITATIONAL_CONSTANT * mass_a)
              return {"mass_2": mass_a}
       elif distance == 0:
              _UpperCAmelCase    :		str     	=					(GRAVITATIONAL_CONSTANT * product_of_mass / (force)) ** 0.5
              return {"distance": distance}
       raise ValueError("""One and only one argument must be 0"""						)


# Run doctest
if __name__ == "__main__":
   import doctest

   doctest.testmod()








'''simple docstring'''






from __future__ import annotations

A_				:					Tuple							=      """Alexander Joslin"""




def        snake_case_   (	lowerCAmelCase_						)->						int:





       '''simple docstring'''


       if number <= 0:
              _UpperCAmelCase    :		Union[str, Any]     	=					F'''n must be greater than 0. Got n = {number}'''
              raise ValueError(lowerCAmelCase_						)

       _UpperCAmelCase    :		List[str]     	=					[number + 1] * (number + 1)

       # starting position
       _UpperCAmelCase    :		Dict     	=					0
       for i in range(1			,  lowerCAmelCase_						):
              _UpperCAmelCase    :		int     	=					min(table[i + 1]			,  table[i] + 1						)
              # check if out of bounds
              if i * 2 <= number:
                     _UpperCAmelCase    :		Dict     	=					min(table[i * 2]			,  table[i] + 1						)
              # check if out of bounds
              if i * 3 <= number:
                     _UpperCAmelCase    :		Tuple     	=					min(table[i * 3]			,  table[i] + 1						)
       return table[number]


if __name__ == "__main__":
   import doctest

   doctest.testmod()



