





"""simple docstring"""





def       UpperCAmelCase__							(  SCREAMING_SNAKE_CASE					:						list							,						SCREAMING_SNAKE_CASE					:						int							,						SCREAMING_SNAKE_CASE					:						int      ):







      '''simple docstring'''




      if right <= left:
            return
      lowerCAmelCase  						=	lowerCAmelCase  						=	left
      lowerCAmelCase  						=	right
      lowerCAmelCase  						=	sorting[left]
      while i <= b:
            if sorting[i] < pivot:
                  lowerCAmelCase						,		lowerCAmelCase  						=	sorting[i], sorting[a]
                  a += 1
                  i += 1
            elif sorting[i] > pivot:
                  lowerCAmelCase						,		lowerCAmelCase  						=	sorting[i], sorting[b]
                  b -= 1
            else:
                  i += 1
      quick_sort_apartition(SCREAMING_SNAKE_CASE							,						SCREAMING_SNAKE_CASE							,						a - 1      )
      quick_sort_apartition(SCREAMING_SNAKE_CASE							,						b + 1							,						SCREAMING_SNAKE_CASE      )


def       UpperCAmelCase__							(  SCREAMING_SNAKE_CASE					:						list							,						SCREAMING_SNAKE_CASE					:						int							,						SCREAMING_SNAKE_CASE					:						int      ):







      '''simple docstring'''




      if left < right:
            lowerCAmelCase  						=	lomuto_partition(SCREAMING_SNAKE_CASE							,						SCREAMING_SNAKE_CASE							,						SCREAMING_SNAKE_CASE      )
            quick_sort_lomuto_partition(SCREAMING_SNAKE_CASE							,						SCREAMING_SNAKE_CASE							,						pivot_index - 1      )
            quick_sort_lomuto_partition(SCREAMING_SNAKE_CASE							,						pivot_index + 1							,						SCREAMING_SNAKE_CASE      )


def       UpperCAmelCase__							(  SCREAMING_SNAKE_CASE					:						list							,						SCREAMING_SNAKE_CASE					:						int							,						SCREAMING_SNAKE_CASE					:						int      ):







      '''simple docstring'''




      lowerCAmelCase  						=	sorting[right]
      lowerCAmelCase  						=	left
      for i in range(SCREAMING_SNAKE_CASE							,						SCREAMING_SNAKE_CASE      ):
            if sorting[i] < pivot:
                  lowerCAmelCase						,		lowerCAmelCase  						=	sorting[i], sorting[store_index]
                  store_index += 1
      lowerCAmelCase						,		lowerCAmelCase  						=	sorting[store_index], sorting[right]
      return store_index


def       UpperCAmelCase__							(  SCREAMING_SNAKE_CASE					:						list      ):







      '''simple docstring'''




      if len(SCREAMING_SNAKE_CASE      ) <= 1:
            return sorting
      return (
          three_way_radix_quicksort([i for i in sorting if i < sorting[0]]      )
          + [i for i in sorting if i == sorting[0]]
          + three_way_radix_quicksort([i for i in sorting if i > sorting[0]]      )
      )


if __name__ == "__main__":
       import doctest

       doctest.testmod(verbose=True)

       SCREAMING_SNAKE_CASE__ =       input("Enter numbers separated by a comma:\n").strip()
       SCREAMING_SNAKE_CASE__ =       [int(item) for item in user_input.split(",")]
       quick_sort_apartition(unsorted, 0, len(unsorted) - 1)
       print(unsorted)













"""simple docstring"""





def       UpperCAmelCase__							(  SCREAMING_SNAKE_CASE					:						int							,						SCREAMING_SNAKE_CASE					:						int      ):







      '''simple docstring'''




      lowerCAmelCase  						=	1.0
      for i in range(1							,						r + 1      ):
            ret *= (n + 1 - i) / i
      return round(SCREAMING_SNAKE_CASE      )


def       UpperCAmelCase__							(  SCREAMING_SNAKE_CASE					:						int      ):







      '''simple docstring'''




      return choose(8 + n							,						SCREAMING_SNAKE_CASE      ) + choose(9 + n							,						SCREAMING_SNAKE_CASE      ) - 10


def       UpperCAmelCase__							(  SCREAMING_SNAKE_CASE					:						int      ):







      '''simple docstring'''




      return sum(non_bouncy_exact(SCREAMING_SNAKE_CASE      ) for i in range(1							,						n + 1      )      )


def       UpperCAmelCase__							(  SCREAMING_SNAKE_CASE					:						int = 1_00      ):







      '''simple docstring'''




      return non_bouncy_upto(SCREAMING_SNAKE_CASE      )


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






