






def     lowerCamelCase__				(   __lowerCamelCase      :					Optional[Any]  ,		__lowerCamelCase      :					List[str]		):
  if n < 0:
    return 0
  # table[i] represents the number of ways to get to amount i
  __UpperCAmelCase							:     Tuple									=  [0] * (n + 1)

  # There is exactly 1 way to get to zero(You pick no coins).
  __UpperCAmelCase							:     int									=  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(__lowerCamelCase  ,		n + 1		):
      table[j] += table[j - coin_val]

  return table[n]


if __name__ == "__main__":
       import doctest

       doctest.testmod()










def     lowerCamelCase__				(   __lowerCamelCase      :					list		):
  if len(__lowerCamelCase		) <= 1:
    return data
  else:
    return [
        *quick_sort([e for e in data[1:] if e <= data[0]]		),
        data[0],
        *quick_sort([e for e in data[1:] if e > data[0]]		),
    ]


if __name__ == "__main__":
       import doctest

       doctest.testmod()


