





def        A__						(							SCREAMING_SNAKE_CASE_ = 1_0_0_0		) ->  int:
		lowerCamelCase :			Dict    		=[]
		lowerCamelCase :			Dict    		=[]
		lowerCamelCase :			Union[str, Any]    		=3
		lowerCamelCase :			List[str]    		=5
		lowerCamelCase :			Union[str, Any]    		=1
		while True:
				lowerCamelCase :			Dict    		=z * temp
				if result < n:
						zmulti.append(SCREAMING_SNAKE_CASE_		)
						temp += 1
				else:
						lowerCamelCase :			List[Any]    		=1
						break
		while True:
				lowerCamelCase :			Optional[Any]    		=x * temp
				if result < n:
						xmulti.append(SCREAMING_SNAKE_CASE_		)
						temp += 1
				else:
						break
		lowerCamelCase :			str    		=list(set(xmulti + zmulti		)		)
		return sum(SCREAMING_SNAKE_CASE_		)


if __name__ == "__main__":
				print(F"""{solution() = }""")








def        A__						(							SCREAMING_SNAKE_CASE_				,							SCREAMING_SNAKE_CASE_		) ->  Union[str, Any]:
		if n < 0:
				return 0
		# table[i] represents the number of ways to get to amount i
		lowerCamelCase :			int    		=[0] * (n + 1)

		# There is exactly 1 way to get to zero(You pick no coins).
		lowerCamelCase :			List[Any]    		=1

		# Pick all coins one by one and update table[] values
		# after the index greater than or equal to the value of the
		# picked coin
		for coin_val in s:
				for j in range(SCREAMING_SNAKE_CASE_				,							n + 1		):
						table[j] += table[j - coin_val]

		return table[n]


if __name__ == "__main__":
				import doctest

				doctest.testmod()

