到底哪里错了?只对了两个点,求助
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
char a[100000];
long long l[100000],top,k,j,s,c[1000000],aa[10000000],ch,sum,as = 1;
int main()
{
cin>>a;
for(long long i=0;i<=strlen(a)-1;i++)
{
if(a[i]!='*'&&a[i]!='+')
{
aa[as]=aa[as]*10+int(a[i]-'0');
aa[as]%=10000;
}
else
{
as++;
if(a[i]=='+')
aa[as]=-1;
else if(a[i]=='*')
aa[as]=-2;
as++;
}
}
for(long long i=1;i<=as;i++)
{
if(aa[i]==-2)
{
aa[i+1]=aa[i-1]*aa[i+1];
aa[i-1]=0;
aa[i]=0;
}
}
for(long long i=0;i<=as;i++)
{
if(aa[i]!=-1)
{
sum+=aa[i];
sum%=10000;
}
}
cout<<sum%10000;
return 0;
}