





def      A__				(       SCREAMING_SNAKE_CASE__)  ->       int:
  __snake_case:		List[str]					    =		len(SCREAMING_SNAKE_CASE__)
  __snake_case:		str					    =		[0] * length
  __snake_case:		Tuple					    =		[[False for i in range(SCREAMING_SNAKE_CASE__)] for j in range(SCREAMING_SNAKE_CASE__)]
  for i, c in enumerate(SCREAMING_SNAKE_CASE__):
    __snake_case:		str					    =		i
    for j in range(i + 1):
      if c == string[j] and (i - j < 2 or is_palindromic[j + 1][i - 1]):
        __snake_case:		Tuple					    =		True
        __snake_case:		Tuple					    =		min(SCREAMING_SNAKE_CASE__   ,   0 if j == 0 else (cut[j - 1] + 1))
    __snake_case:		Union[str, Any]					    =		mincut
  return cut[length - 1]


if __name__ == "__main__":
      __UpperCAmelCase			:  Optional[int]										=				input("Enter the string: ").strip()
      __UpperCAmelCase			:  Dict										=				find_minimum_partitions(s)
      print(f'Minimum number of partitions required for the \'{s}\' is {ans}')












import decimal



def    UpperCAmelCase__	(  ):
  lowercase     :int   						=    0
  lowercase     :str   						=    decimal.Context(prec=105 )
  for i in range(2,      100 ):
    lowercase     :int   						=    decimal.Decimal(lowerCamelCase )
    lowercase     :str   						=    number.sqrt(lowerCamelCase )
    if len(str(lowerCamelCase ) ) > 1:
      answer += int(str(lowerCamelCase )[0] )
      lowercase     :int   						=    str(lowerCamelCase )[2:101]
      answer += sum(int(lowerCamelCase ) for x in sqrt_number_str )
  return answer


if __name__ == "__main__":
     import doctest

     doctest.testmod()
     print(f'''{solution() = }''')



