input: 
  def knapSack(W: int, wt: List[int], val: List[int], n: int) -> int:
      """
      A naive recursive Python program for the 0-1 Knapsack problem. It returns the maximum value that can be put in a knapsack of capacity W using items with given weights and values.
      
      >>> knapSack(50, [10, 20, 30], [60, 100, 120], 3)
      220
      >>> knapSack(60, [10, 20, 30], [60, 100, 120], 3)
      280
      >>> knapSack(30, [10, 20, 30], [60, 100, 120], 3)
      160
      """
  
output:     if n == 0 or W == 0:
          return 0
  
      if wt[n-1] > W:
          return knapSack(W, wt, val, n-1)
      else:
          return max(val[n-1] + knapSack(W-wt[n-1], wt, val, n-1), knapSack(W, wt, val, n-1))