



'''simple docstring'''





import math

def 	a_					(							_lowerCAmelCase	)				->				bool:

  if 1 < number < 4:
    # 2 and 3 are primes
    return True
  elif number < 2 or number % 2 == 0 or number % 3 == 0:
    # Negatives, 0, 1, all even numbers, all multiples of 3 are not primes
    return False

  # All primes number are in format of 6k +/- 1
  for i in range(5	,int(math.sqrt(_lowerCAmelCase	) + 1	)	,6	):
    if number % i == 0 or number % (i + 2) == 0:
      return False
  return True

def 	a_					(							_lowerCAmelCase = 1000	,_lowerCAmelCase = 1000	)				->				int:
  __lowerCamelCase	:	Tuple   	=			[0, 0, 0]  # length, a, b
  for a in range((a_limit * -1) + 1	,_lowerCAmelCase	):
    for b in range(2	,_lowerCAmelCase	):
      if is_prime(_lowerCAmelCase	):
        __lowerCamelCase	:	Union[str, Any]   	=			0
        __lowerCamelCase	:	Union[str, Any]   	=			0
        while is_prime((n**2) + (a * n) + b	):
          count += 1
          n += 1
        if count > longest[0]:
          __lowerCamelCase	:	Union[str, Any]   	=			[count, a, b]
  __lowerCamelCase	:	Dict   	=			longest[1] * longest[2]
  return ans


if __name__ == "__main__":
   print(solution(1000, 1000))











'''simple docstring'''





def 	a_					(							_lowerCAmelCase	,_lowerCAmelCase	)				->				int:
  # The longer word should come first
  if len(_lowerCAmelCase	) < len(_lowerCAmelCase	):
    return levenshtein_distance(_lowerCAmelCase	,_lowerCAmelCase	)

  if len(_lowerCAmelCase	) == 0:
    return len(_lowerCAmelCase	)

  __lowerCamelCase	:	int   	=			list(range(len(_lowerCAmelCase	) + 1	)	)

  for i, ca in enumerate(_lowerCAmelCase	):
    __lowerCamelCase	:	Union[str, Any]   	=			[i + 1]

    for j, ca in enumerate(_lowerCAmelCase	):
      # Calculate insertions, deletions and substitutions
      __lowerCamelCase	:	Any   	=			previous_row[j + 1] + 1
      __lowerCamelCase	:	int   	=			current_row[j] + 1
      __lowerCamelCase	:	Any   	=			previous_row[j] + (ca != ca)

      # Get the minimum to append to the current row
      current_row.append(min(_lowerCAmelCase	,_lowerCAmelCase	,_lowerCAmelCase	)	)

    # Store the previous row
    __lowerCamelCase	:	Optional[int]   	=			current_row

  # Returns the last element (distance)
  return previous_row[-1]


if __name__ == "__main__":
   _UpperCamelCase							    =						input('Enter the first word:\n').strip()
   _UpperCamelCase							    =						input('Enter the second word:\n').strip()

   _UpperCamelCase							    =						levenshtein_distance(first_word, second_word)
   print(f'''Levenshtein distance between {first_word} and {second_word} is {result}''')






