Returns the minimum number of cuts needed to partition a string such that every part is a palindrome
int minpalparti_memo ( string input , int i , int j , unordered_map < string , int > & memo ) { if ( i > j ) return 0 ;