'''simple docstring'''

def __UpperCamelCase(   _A					:				int = 3  ,			_A					:				int = 7  ,			_A					:				int = 1_00_00_00    ):
   '''simple docstring'''
   UpperCAmelCase__							:				int   				=  0
   UpperCAmelCase__							:				Any   				=  1

   for current_denominator in range(1  ,			limit + 1    ):
      UpperCAmelCase__							:				List[str]   				=  current_denominator * numerator // denominator
      if current_denominator % denominator == 0:
         current_numerator -= 1
      if current_numerator * max_denominator > current_denominator * max_numerator:
         UpperCAmelCase__							:				Any   				=  current_numerator
         UpperCAmelCase__							:				Optional[int]   				=  current_denominator
   return max_numerator


if __name__ == "__main__":
  print(solution(numerator=3, denominator=7, limit=1_000_000))





'''simple docstring'''

def __UpperCamelCase(   _A					:				int    ):
   '''simple docstring'''

   if length <= 0 or not isinstance(_A  ,			_A    ):
      raise ValueError('''Length must be a positive integer.'''    )
   return [n * (2 * n - 1) for n in range(_A    )]


if __name__ == "__main__":
  print(hexagonal_numbers(length=5))
  print(hexagonal_numbers(length=10))




