Skip to content

Instantly share code, notes, and snippets.

@fjc-oai
Created November 28, 2014 19:24
Show Gist options
  • Save fjc-oai/ebda1e219f1e0f857b61 to your computer and use it in GitHub Desktop.
Save fjc-oai/ebda1e219f1e0f857b61 to your computer and use it in GitHub Desktop.
class Solution {
public:
int minCut(string s) {
vector<vector<bool>>isPal(s.size(),vector<bool>(s.size()+1,true));
for(int l=2;l<=s.size();l++)
for(int i=0;i+l-1<s.size();i++)
isPal[i][l]= s[i]==s[i+l-1] && isPal[i+1][l-2];
vector<int>f(s.size()+1,INT_MAX);
f[0]=-1;
for(int i=1;i<=s.size();i++)
for(int j=0;j<i;j++)
if(isPal[j][i-j])
f[i]=min(f[i],f[j]+1);
return f.back();
}
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment