import numpy as np






def 					SCREAMING_SNAKE_CASE_			(		lowerCAmelCase_: Dict     ):
      snake_case_     :			int       =       np.exp(snake_case__     )

      # Add up the all the exponentials
      snake_case_     :			Dict       =       np.sum(snake_case__     )

      # Divide every exponent by the sum of all exponents
      snake_case_     :			Optional[Any]       =       exponent_vector / sum_of_exponents

      return softmax_vector


if __name__ == "__main__":
     print(softmax((0,)))




from __future__ import annotations

UpperCAmelCase							=       "Alexander Joslin"






def 					SCREAMING_SNAKE_CASE_			(		lowerCAmelCase_: int     ):

      if number <= 0:
            snake_case_     :			Dict       =       f"n must be greater than 0. Got n = {number}"
            raise ValueError(lowerCAmelCase_     )

      snake_case_     :			Tuple       =       [number + 1] * (number + 1)

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


if __name__ == "__main__":
     import doctest

     doctest.testmod()



