求dalao帮助,错哪了?
#include<bits/stdc++.h>
using namespace std;
int a[10000];
int main(){
int n,l=1,r,i;
bool flag=true;
cin>>n;
r=n;
for(int i=1;i<=n;i++)
cin>>a[i];
i=1;
while(flag){
flag=false;
if(a[i]==a[i+1]&&i==l){
a[i+1]++;
l++;
i=l-1;
}else if(a[i]==a[i+1]&&i==r){
a[i]++;
r--;
i=l-1;
}else if(a[i]==a[i+1]&&i!=l&&i!=r){
a[i]++;
for(int j=i+1;j<r;j++)
a[j]=a[j+1];
r--;
i=l-1;
}
for(int j=l;j<r;j++){
if(a[j]==a[j+1])
flag=true;
}
i++;
}
cout<<r-l+1;
return 0;
}