rt.此代码目标骗15分。求调悬10关,不是诈骗(不过小号数量不够有一部分关只能给调代码者的小号),能大框架不改调出骗15分直接给关(我不信有人能调出没注释的2kB代码)
#include"bits/stdc++.h"
using namespace std;
int n,ans=0,place;
int lizi[2004][4];
bool used[2004];
bool flag=true;
int main()
{
string s;
cin>>s;
n=s.size();
for (int i=0;i<s.size();i++)
{
char k=s[i];
if (int(k)==43)
{
lizi[i][0]=1;
lizi[i][1]=-1;
lizi[i][2]=(i+1);
lizi[i][3]=1;
}
if (int(k)==45)
{
lizi[i][0]=2;
lizi[i][1]=1;
lizi[i][2]=(i+1);
lizi[i][3]=1;
}
}
while (flag)
{
flag=false;
memset(used,false,sizeof(used));
for (int i=1;i<=n;i++)
{
if (lizi[i][1]==-1)
{
flag=true;
}
if ((lizi[i][2]==n)&&(lizi[i][1]==1))
{
lizi[i][3]=0;
}
if ((lizi[i][2]==-1)&&(lizi[i][0]>2))
{
ans++;
lizi[i][3]=0;
}
if (lizi[i][3])
{
used[lizi[i][2]]=true;
}
}
if (!flag)
{
printf("%d",ans);
return 0;
}
for (int i=1;i<=n;i++)
{
used[lizi[i][2]]=false;
lizi[i][2]+=lizi[i][1];
if (used[lizi[i][2]])
{
for (int j=1;j<=n;j++)
{
if (lizi[j][2]==lizi[i][2])
{
if (j!=i)
{
place=j;
}
}
}
if (lizi[i][0]!=lizi[place][0])
{
if (lizi[i][0]==1&&lizi[place][0]==2)
{
lizi[i][0]=4;
lizi[place][0]=3;
}
if (lizi[i][0]==2&&lizi[place][0]==1)
{
lizi[i][0]=3;
lizi[place][0]=4;
}
if (lizi[i][0]==1&&lizi[place][0]==4)
{
lizi[i][0]=2;
lizi[place][0]=3;
}
if (lizi[i][0]==4&&lizi[place][0]==1)
{
lizi[i][0]=3;
lizi[place][0]=2;
}
if (lizi[i][0]==2&&lizi[place][0]==3)
{
lizi[i][0]=1;
lizi[place][0]=4;
}
if (lizi[i][0]==3&&lizi[place][0]==2)
{
lizi[i][0]=4;
lizi[place][0]=1;
}
if (lizi[i][0]==3&&lizi[place][0]==4)
{
lizi[i][0]=2;
lizi[place][0]=1;
}
if (lizi[i][0]==4&&lizi[place][0]==3)
{
lizi[i][0]=1;
lizi[place][0]=2;
}
}
}
used[lizi[i][2]]=true;
}
}
printf("%d",ans);
return 0;
}