

'''simple docstring'''






from collections.abc import Sequence


def 						_A	(       A__ = None ):






 """simple docstring"""



 if nums is None or not nums:
  raise ValueError('''Input sequence should not be empty''' )

 __lowercase				    =					nums[0]
 for i in range(1	,							len(A__ ) ):
  __lowercase				    =					nums[i]
  __lowercase				    =					max(A__	,							ans + num	,							A__ )

 return ans


if __name__ == "__main__":
 import doctest

 doctest.testmod()

 # Try on a sample input from the user
 lowerCAmelCase__   		=      int(input('''Enter number of elements : ''').strip())
 lowerCAmelCase__   		=      list(map(int, input('''\nEnter the numbers : ''').strip().split()))[:n]
 print(max_subsequence_sum(array))



"""simple docstring"""






def       A_  (				__lowercase						,	__lowercase						,	__lowercase	):
 if len(__lowercase	) != len(__lowercase	):
  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.
 UpperCamelCase_     :					int   	=[p / w for p, w in zip(__lowercase						,	__lowercase	)]

 # Creating a copy of the list and sorting profit/weight in ascending order
 UpperCamelCase_     :					Optional[int]   	=sorted(__lowercase	)

 # declaring useful variables
 UpperCamelCase_     :					Optional[int]   	=len(__lowercase	)
 UpperCamelCase_     :					Optional[int]   	=0
 UpperCamelCase_     :					List[Any]   	=0
 UpperCamelCase_     :					Optional[int]   	=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
  UpperCamelCase_     :					List[str]   	=sorted_profit_by_weight[length - i - 1]
  UpperCamelCase_     :					Optional[Any]   	=profit_by_weight.index(__lowercase	)
  UpperCamelCase_     :					str   	=-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.'
 )

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

 # Function Call
 calc_profit(profit, weight, max_weight)
