class Solution {
int jj[100],kk[100];
int max1=0,max0=0;
public:
bool checkZeroOnes(string s) {
int dd,cc;
dd=s[0]-'0';
if(dd==1)
{
kk[0]=1;
max1=1;
}
else
{
jj[0]=1;
max0=1;
}
for(int i=1;i<s.length();i++)
{
dd=s[i]-'0';
cc=s[i-1]-'0';
if(dd==cc&&cc==0)
{
jj[i]=jj[i-1]+1;
max0=max(max0,jj[i]);
}
else if(dd==cc&&cc==1)
{
kk[i]=kk[i-1]+1;
max1=max(max1,kk[i]);
}
else if(dd==1)
{
kk[i]=1;
max1=max(max1,kk[i]);
}
else
{
jj[i]=1;
max0=max(max0,jj[i]);
}
}
if(max1>max0)
return true;
else
return false;
}
};
DP处理,注意串仅有一个的情况