
"""simple docstring"""

import math




def      lowercase__    (       lowerCAmelCase					:       str			,					lowerCAmelCase					:       Optional[Any]			)			->   List[Any]:






    """simple docstring"""




    if 0 not in (x, y):
        # We use the relation x^y = y*log10(x), where 10 is the base.
        return y * math.logaa(lowerCAmelCase			)
    else:
        if x == 0:  # 0 raised to any number is 0
            return 0
        elif y == 0:
            return 1  # any number raised to 0 is 1
    raise AssertionError('This should never happen'			)


if __name__ == "__main__":  # Main function
   # Read two numbers from input and typecast them to int using map function.
   # Here x is the base and y is the power.
   SCREAMING_SNAKE_CASE_            =    '''Enter the base and the power separated by a comma: '''
   SCREAMING_SNAKE_CASE_       ,    SCREAMING_SNAKE_CASE_            =    map(int, input(prompt).split(''','''))
   SCREAMING_SNAKE_CASE_       ,    SCREAMING_SNAKE_CASE_            =    map(int, input(prompt).split(''','''))

   # We find the log of each number, using the function res(), which takes two
   # arguments.
   SCREAMING_SNAKE_CASE_            =    res(xa, ya)
   SCREAMING_SNAKE_CASE_            =    res(xa, ya)

   # We check for the largest number
   if resa > resa:
      print('''Largest number is''', xa, '''^''', ya)
   elif resa > resa:
      print('''Largest number is''', xa, '''^''', ya)
   else:
      print('''Both are equal''')





"""simple docstring"""

from __future__ import annotations

SCREAMING_SNAKE_CASE_            =    [-10, -5, 0, 5, 5.1, 11, 13, 21, 3, 4, -21, -10, -5, -1, 0]
SCREAMING_SNAKE_CASE_            =    [-5, 0, 5, 5.1, 11, 13, 21, -1, 4, -1, -10, -5, -1, 0, -1]




def      lowercase__    (       lowerCAmelCase					:       list[float]			)			->   list[float]:






    """simple docstring"""




    UpperCAmelCase          =       []
    UpperCAmelCase          =       len(lowerCAmelCase			)

    for i in range(lowerCAmelCase			):
        UpperCAmelCase          =       -1
        for j in range(i + 1			,					lowerCAmelCase			):
            if arr[i] < arr[j]:
                UpperCAmelCase          =       arr[j]
                break
        result.append(lowerCAmelCase			)
    return result




def      lowercase__    (       lowerCAmelCase					:       list[float]			)			->   list[float]:






    """simple docstring"""




    UpperCAmelCase          =       []
    for i, outer in enumerate(lowerCAmelCase			):
        UpperCAmelCase          =       -1
        for inner in arr[i + 1 :]:
            if outer < inner:
                UpperCAmelCase          =       inner
                break
        result.append(lowerCAmelCase			)
    return result




def      lowercase__    (       lowerCAmelCase					:       list[float]			)			->   list[float]:






    """simple docstring"""




    UpperCAmelCase          =       len(lowerCAmelCase			)
    UpperCAmelCase          =       []
    UpperCAmelCase          =       [-1] * arr_size

    for index in reversed(range(lowerCAmelCase			)			):
        if stack:
            while stack[-1] <= arr[index]:
                stack.pop()
                if not stack:
                    break
        if stack:
            UpperCAmelCase          =       stack[-1]
        stack.append(arr[index]			)
    return result


if __name__ == "__main__":
   from doctest import testmod
   from timeit import timeit

   testmod()
   print(next_greatest_element_slow(arr))
   print(next_greatest_element_fast(arr))
   print(next_greatest_element(arr))

   SCREAMING_SNAKE_CASE_            =    (
       '''from __main__ import arr, next_greatest_element_slow, '''
       '''next_greatest_element_fast, next_greatest_element'''
   )
   print(
       '''next_greatest_element_slow():''',
       timeit('''next_greatest_element_slow(arr)''', setup=setup),
   )
   print(
       '''next_greatest_element_fast():''',
       timeit('''next_greatest_element_fast(arr)''', setup=setup),
   )
   print(
       '''     next_greatest_element():''',
       timeit('''next_greatest_element(arr)''', setup=setup),
   )



