




def      lowerCAmelCase_     (					lowerCamelCase:    int = 1_00  )   ->     int:


      '''simple docstring'''




      lowerCamelCase__ 					=			[[0 for _ in range(lowerCamelCase  )] for _ in range(m + 1  )]
      for i in range(m + 1  ):
            lowerCamelCase__ 					=			1

      for n in range(m + 1  ):
            for k in range(1       ,			lowerCamelCase  ):
                  memo[n][k] += memo[n][k - 1]
                  if n > k:
                        memo[n][k] += memo[n - k - 1][k]

      return memo[m][m - 1] - 1


if __name__ == "__main__":
      print(solution(int(input("""Enter a number: """).strip())))





def      lowerCAmelCase_     (					lowerCamelCase:    list       ,			lowerCamelCase:    int       ,			lowerCamelCase:    int  )   ->     None:


      '''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(lowerCamelCase       ,			lowerCamelCase       ,			a - 1  )
      quick_sort_apartition(lowerCamelCase       ,			b + 1       ,			lowerCamelCase  )

def      lowerCAmelCase_     (					lowerCamelCase:    list       ,			lowerCamelCase:    int       ,			lowerCamelCase:    int  )   ->     None:


      '''simple docstring'''




      if left < right:
            lowerCamelCase__ 					=			lomuto_partition(lowerCamelCase       ,			lowerCamelCase       ,			lowerCamelCase  )
            quick_sort_lomuto_partition(lowerCamelCase       ,			lowerCamelCase       ,			pivot_index - 1  )
            quick_sort_lomuto_partition(lowerCamelCase       ,			pivot_index + 1       ,			lowerCamelCase  )

def      lowerCAmelCase_     (					lowerCamelCase:    list       ,			lowerCamelCase:    int       ,			lowerCamelCase:    int  )   ->     int:


      '''simple docstring'''




      lowerCamelCase__ 					=			sorting[right]
      lowerCamelCase__ 					=			left
      for i in range(lowerCamelCase       ,			lowerCamelCase  ):
            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      lowerCAmelCase_     (					lowerCamelCase:    list  )   ->     list:


      '''simple docstring'''




      if len(lowerCamelCase  ) <= 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      :				Optional[int]				      =input("""Enter numbers separated by a comma:\n""").strip()
      __SCREAMING_SNAKE_CASE      :				str				      =[int(item) for item in user_input.split(""",""")]
      quick_sort_apartition(unsorted, 0, len(unsorted) - 1)
      print(unsorted)