



'''simple docstring'''



__A       =      (1, 153, 370, 371, 1_634, 24_678_051, 115_132_219_018_763_992_565_095_597_973_971_522_401)
__A       =      (-153, -1, 0, 1.2, 200, "A", [], {}, None)





def 	_A						(							lowercase__		):
						if not isinstance(lowercase__						,						lowercase__		) or n < 1:
												return False

						# Initialization of sum and number of digits.
						lowercase__								=    0
						lowercase__								=    0
						lowercase__								=    n
						# Calculation of digits of the number
						while temp > 0:
												number_of_digits += 1
												temp //= 10
						# Dividing number into separate digits and find Armstrong number
						lowercase__								=    n
						while temp > 0:
												lowercase__								=    temp % 10
												total += rem**number_of_digits
												temp //= 10
						return n == total





def 	_A						(							lowercase__		):
						if not isinstance(lowercase__						,						lowercase__		) or n < 1:
												return False

						# Init a "histogram" of the digits
						lowercase__								=    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
						lowercase__								=    0
						lowercase__								=    0
						lowercase__								=    n
						while temp > 0:
												lowercase__								=    divmod(lowercase__						,						10		)
												digit_histogram[rem] += 1
												digit_total += 1

						for cnt, i in zip(lowercase__						,						range(len(lowercase__		)		)		):
												total += cnt * i**digit_total

						return n == total





def 	_A						(							lowercase__		):
						if not isinstance(lowercase__						,						lowercase__		) or n < 1:
												return False
						lowercase__								=    len(str(lowercase__		)		)  # the power that all digits will be raised to
						# check if sum of each digit multiplied expo times is equal to number
						return n == sum(int(lowercase__		) ** expo for i in str(lowercase__		)		)





def 	_A						(							):
						lowercase__								=    int(input("""Enter an integer to see if it is an Armstrong number: """		).strip()		)
						print(f'''{num} is {'' if armstrong_number(lowercase__		) else 'not '}an Armstrong number.'''		)
						print(f'''{num} is {'' if narcissistic_number(lowercase__		) else 'not '}an Armstrong number.'''		)
						print(f'''{num} is {'' if pluperfect_number(lowercase__		) else 'not '}an Armstrong number.'''		)


if __name__ == "__main__":
				import doctest

				doctest.testmod()
				main()








'''simple docstring'''



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





def 	_A						(							lowercase__						,						lowercase__						,						lowercase__		):
						if left < right:
												lowercase__								=    lomuto_partition(lowercase__						,						lowercase__						,						lowercase__		)
												quick_sort_lomuto_partition(lowercase__						,						lowercase__						,						pivot_index - 1		)
												quick_sort_lomuto_partition(lowercase__						,						pivot_index + 1						,						lowercase__		)





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





def 	_A						(							lowercase__		):
						if len(lowercase__		) <= 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)

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






