代码
#include <iostream>
using namespace std;
void Calculate(const char *str,int *max0,int *max1)
{
int temp0 = 0; //保存连续是‘0’的最大长度
int temp1 = 0;
while(*str)
{
if(*str == '0')
{
(*max0)++;
if(*(++str)=='1')
{
if(temp0<*max0)
{
temp0 = *max0;
}
*max0 = 0;
}
}
else if(*str == '1')//当前字符是‘1’
{
(*max1)++;
if(*(++str)=='0')
{
if(temp1<*max1)
{
temp1 = *max1;
}
*max1 = 0;
}
}
}
*max0 = temp0;
*max1 = temp1;
}
int main()
{
char string[] = "00001110110000001100110";
int max0 = 0;
int max1 = 0;
Calculate(string,&max0,&max1);
cout<<max0<<endl; //6
cout<<max1<<endl; //3
return 0;
}