






def      snake_case		(							UpperCAmelCase	:       List[Any],						UpperCAmelCase	:       Union[str, Any],						UpperCAmelCase	:       Tuple   ):

				'''simple docstring'''





				if len(snake_case_   ) != len(snake_case_   ):
								raise ValueError('The length of profit and weight must be same.'   )
				if max_weight <= 0:
								raise ValueError('max_weight must greater than zero.'   )
				if any(p < 0 for p in profit   ):
								raise ValueError('Profit can not be negative.'   )
				if any(w < 0 for w in weight   ):
								raise ValueError('Weight can not be negative.'   )

				# List created to store profit gained for the 1kg in case of each weight
				# respectively.  Calculate and append profit/weight for each element.
				A	 =      [p / w for p, w in zip(snake_case_,						snake_case_   )]

				# Creating a copy of the list and sorting profit/weight in ascending order
				A	 =      sorted(snake_case_   )

				# declaring useful variables
				A	 =      len(snake_case_   )
				A	 =      0
				A	 =      0
				A	 =      0

				# loop till the total weight do not reach max limit e.g. 15 kg and till i<length
				while limit <= max_weight and i < length:
								# flag value for encountered greatest element in sorted_profit_by_weight
								A	 =      sorted_profit_by_weight[length - i - 1]
								A	 =      profit_by_weight.index(snake_case_   )
								A	 =      -1

								# check if the weight encountered is less than the total weight
								# encountered before.
								if max_weight - limit >= weight[index]:
												limit += weight[index]
												# Adding profit gained for the given weight 1 ===
												# weight[index]/weight[index]
												gain += 1 * profit[index]
								else:
												# Since the weight encountered is greater than limit, therefore take the
												# required number of remaining kgs and calculate profit for it.
												# weight remaining / weight[index]
												gain += (max_weight - limit) / weight[index] * profit[index]
												break
								i += 1
				return gain


if __name__ == "__main__":
					print(
					    'Input profits, weights, and then max_weight (all positive ints) separated by '
					    'spaces.'
					)

					lowerCAmelCase_           = [int(x) for x in input('Input profits separated by spaces: ').split()]
					lowerCAmelCase_           = [int(x) for x in input('Input weights separated by spaces: ').split()]
					lowerCAmelCase_           = int(input('Max weight allowed: '))

					# Function Call
					calc_profit(profit, weight, max_weight)













def      snake_case		(							UpperCAmelCase	:       int   ):
				A	 =      0
				while num > 0:
								digit_sum += num % 10
								num //= 10
				return digit_sum







def      snake_case		(							UpperCAmelCase	:       int = 1_00   ):
				A	 =      1
				A	 =      2

				for i in range(2,						max_n + 1   ):
								A	 =      pre_numerator
								A	 =      2 * i // 3 if i % 3 == 0 else 1
								A	 =      cur_numerator
								A	 =      e_cont * pre_numerator + temp

				return sum_digits(UpperCAmelCase   )


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





