

def 			A_      (    _UpperCAmelCase    ):
						SCREAMING_SNAKE_CASE_: Union[str, Any]  		=       (1 + 24 * n) ** 0.5
						return ((1 + root) / 6) % 1 == 0







def 			A_      (    _UpperCAmelCase = 50_00    ):
						SCREAMING_SNAKE_CASE_: str  		=       [(i * (3 * i - 1)) // 2 for i in range(1				,	_UpperCAmelCase    )]
						for i, pentagonal_i in enumerate(_UpperCAmelCase    ):
												for j in range(_UpperCAmelCase				,	len(_UpperCAmelCase    )    ):
																		SCREAMING_SNAKE_CASE_: Dict  		=       pentagonal_nums[j]
																		SCREAMING_SNAKE_CASE_: List[Any]  		=       pentagonal_i + pentagonal_j
																		SCREAMING_SNAKE_CASE_: str  		=       pentagonal_j - pentagonal_i
																		if is_pentagonal(_UpperCAmelCase    ) and is_pentagonal(_UpperCAmelCase    ):
																								return b

						return -1


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








'''simple docstring'''







from __future__ import annotations

from random import choice





def 					UpperCAmelCase_		(__a      :    str ):






   """simple docstring"""

   return choice(__a )





def 					UpperCAmelCase_		(__a      :    list[int] ,	__a      :    int ):






   """simple docstring"""

   _a				:	Dict			=   random_pivot(__a )

   # partition based on pivot
   # linear time
   _a				:	Optional[int]			=   [e for e in lst if e < pivot]
   _a				:	List[str]			=   [e for e in lst if e > pivot]

   # if we get lucky, pivot might be the element we want.
   # we can easily see this:
   # small (elements smaller than k)
   # + pivot (kth element)
   # + big (elements larger than k)
   if len(__a ) == k - 1:
      return pivot
   # pivot is in elements bigger than k
   elif len(__a ) < k - 1:
      return kth_number(__a ,	k - len(__a ) - 1 )
   # pivot is in elements smaller than k
   else:
      return kth_number(__a ,	__a )


if __name__ == "__main__":
  import doctest

  doctest.testmod()



