#include<iostream>
using namespace std;
int a[8]= {
1,1,2,1,1,1,2,1
};
main() {
int n=8;
int s=3;
int curv,curn,needn,imax=0;
bool isok=true;
for(int i=0; i<n; i++)
{
if(i==0||a[i]!=curv) //第一次或者数值变化的时候修正目标
{
curv=a[i];
curn=1;
if(a[i]!=0&&s%a[i]==0)
{
needn=s/a[i];
isok=true;
}
else if(a[i]==0&&s==0)
{
isok=true;
} else
{
isok=false; //如果这样,永远无法达到目标
}
}
else if(a[i]==curv&&isok==false)
{
}
else if(a[i]==curv&&isok==true) //又一次累计了,看看累计得够不够
{
if(a[i]!=0)
{
curn++;
if(curn==needn)
{
imax=max(imax,needn);
}
}
else if(a[i]==0&&s==0)
{
curn++;
imax=max(imax,curn);
}
}
cout<<isok<<" "<<curn<<" "<<needn<<endl;
}
cout<<imax<<endl;
}