String 仅含元音的剩余最长子字符串

String 仅含元音的剩余最长子字符串,string,data-structures,dynamic-programming,String,Data Structures,Dynamic Programming,给定一个只包含较低字母的字符串,您可以从给定字符串中删除任意数量的子字符串,但同一子字符串最多可以删除两次,以便剩余字符串只包含元音。查找仅包含元音的剩余最长子字符串。如果不可能,返回-1 我认为这可以通过DP解决。但我不能形成递归解 例如:aabbeeddii o/p:aaeeii 例如:阿比比 o/p:aaie我猜你说的“字母”是指“字母”。“删除任何子字符串”是否意味着两次都必须是相同的子字符串?是的,只有小写字母。您可以删除任何子字符串。但如果您是,则不能删除同一子字符串超过两次。例如:

给定一个只包含较低字母的字符串,您可以从给定字符串中删除任意数量的子字符串,但同一子字符串最多可以删除两次,以便剩余字符串只包含元音。查找仅包含元音的剩余最长子字符串。如果不可能,返回-1

我认为这可以通过DP解决。但我不能形成递归解

例如:aabbeeddii o/p:aaeeii

例如:阿比比
o/p:aaie

我猜你说的“字母”是指“字母”。“删除任何子字符串”是否意味着两次都必须是相同的子字符串?是的,只有小写字母。您可以删除任何子字符串。但如果您是,则不能删除同一子字符串超过两次。例如:aabbibbbe->此处bb出现三次,因此您不能生成最长的字符串aaiie。因为你必须移除bb三次。相反,你可以去掉bbibb和bb,形成AAIE。你的意思还不清楚。你的问题让人觉得你只能删除两个子串,或者一个子串删除两次;这是正确的,还是只要每个子字符串的删除次数不超过两次,就可以删除任意多的子字符串?请编辑您的问题以使其更清晰。您可以删除任意数量的任意大小的子字符串。但同一子串最多可以删除两次。您可以同时删除元音和辅音。编辑问题