else if和 if 在变量改变的情况下很有不同
class Solution {
public:
int captureForts(vector<int>& forts) {
int res=0;
int len=forts.size();
for(int i=0;i<len;i++)
{
if(forts[i]==1)
{
int j=i+1;
while(j<len)
{
if(forts[j]==0)
{
j++;
}
else if(forts[j]==1)
{
break;
}
else if(forts[j]==-1)
{
res=max(res,j-i-1);
break;
}
}
j=i-1;
while(j>=0)
{
if(forts[j]==0)
{
j--;
}
else if(forts[j]==1)
{
break;
}
else if(forts[j]==-1)
{
res=max(res,i-j-1);
break;
}
}
}
}
return res;
}
};