




def 						SCREAMING_SNAKE_CASE__ (   lowercase					)  ->       int:
   snake_case				:    Any           =	hex_num.strip()
   if not hex_num:
      raise ValueError("""No value was passed to the function"""					)

   snake_case				:    List[str]           =	hex_num[0] == """-"""
   if is_negative:
      snake_case				:    Optional[Any]           =	hex_num[1:]

   try:
      snake_case				:    Any           =	int(lowercase						,16					)
   except ValueError:
      raise ValueError("""Invalid value was passed to the function"""					)

   snake_case				:    Tuple           =	""""""
   while int_num > 0:
      snake_case				:    List[str]           =	str(int_num % 2					) + bin_str
      int_num >>= 1

   return int(("""-""" + bin_str) if is_negative else bin_str					)


if __name__ == "__main__":
       import doctest

       doctest.testmod()











import functools




def 						SCREAMING_SNAKE_CASE__ (   lowercase						,lowercase					)  ->       int:

   # Validation
   if not isinstance(lowercase						,lowercase					) or not all(isinstance(lowercase						,lowercase					) for day in days					):
      raise ValueError("""The parameter days should be a list of integers"""					)

   if len(lowercase					) != 3 or not all(isinstance(lowercase						,lowercase					) for cost in costs					):
      raise ValueError("""The parameter costs should be a list of three integers"""					)

   if len(lowercase					) == 0:
      return 0

   if min(lowercase					) <= 0:
      raise ValueError("""All days elements should be greater than 0"""					)

   if max(lowercase					) >= 366:
      raise ValueError("""All days elements should be less than 366"""					)

   snake_case				:    List[str]           =	set(lowercase					)

   @functools.cache
   def dynamic_programming(lowercase					) -> int:
      if index > 365:
         return 0

      if index not in days_set:
         return dynamic_programming(index + 1					)

      return min(
          costs[0] + dynamic_programming(index + 1					)						,costs[1] + dynamic_programming(index + 7					)						,costs[2] + dynamic_programming(index + 30					)						,)

   return dynamic_programming(1					)


if __name__ == "__main__":
       import doctest

       doctest.testmod()





