




from __future__ import annotations







def 		lowercase__   (		__A:	list[float]				):





					'''simple docstring'''






					if len(__A				) < 2:
										raise ValueError('''Monogons and Digons are not polygons in the Euclidean space'''				)
					if any(i <= 0 for i in nums				):
										raise ValueError('''All values must be greater than 0'''				)
					__magic_name__							:	Union[str, Any]    							=							nums.copy()
					copy_nums.sort()
					return copy_nums[-1] < sum(copy_nums[:-1]				)


if __name__ == "__main__":
	import doctest

	doctest.testmod()









import functools







def 		lowercase__   (		__A:	list[int]							,__A:	list[int]				):





					'''simple docstring'''






					if not isinstance(__A							,__A				) or not all(isinstance(__A							,__A				) for day in days				):
										raise ValueError('''The parameter days should be a list of integers'''				)

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

					if len(__A				) == 0:
										return 0

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

					if max(__A				) >= 3_6_6:
										raise ValueError('''All days elements should be less than 366'''				)

					__magic_name__							:	Tuple    							=							set(__A				)

					@functools.cache
					def dynamic_programming(__A:	int				) -> int:
										if index > 3_6_5:
															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 + 3_0				)							,)

					return dynamic_programming(1				)


if __name__ == "__main__":
	import doctest

	doctest.testmod()



