#include
using namespace std;
struct gamer{
int total;
int attack[8];
int health[8];
};
struct gamer x,y;//x为先手,y为后手
void moveright(struct gamer *z,int index)
{
for(int i=(*z).total+1;i>index;i--)
{
(*z).attack[i]=(*z).attack[i-1];
(*z).health[i]=(*z).health[i-1];
}
}
void moveleft(struct gamer *z,int index)
{
for(int i=index;i<(*z).total;i++)
{
(*z).attack[i]=(*z).attack[i+1];
(*z).health[i]=(*z).health[i+1];
}
(*z).attack[(*z).total]=0;
(*z).health[(*z).total]=0;
}
int main()
{
x.attack[0]=0;x.health[0]=30;//定义0为英雄的位置
y.attack[0]=0;y.health[0]=30;
x.total=0;
x.total=0;
for(int i=1;i<=7;i++)
{
x.attack[i]=0;y.attack[i]=0;
x.health[i]=0;y.health[i]=0;
}
int n,index;
int flag=0;
cin>>n;
while(n--&&x.health[0]>0&&y.health[0]>0)
{
string ope;
cin>>ope;
if(ope=="end")
{
if(flag==0)
flag=1;
else flag=0;
continue;
}
if(ope=="summon")
{
cin>>index;
if(flag==0&&index<=7&&index>=1&&x.total<=7)
{
if(x.health[index]>0)
{
moveright(&x,index);
}
cin>>x.attack[index]>>x.health[index];
x.total++;
}
else if(flag==1&&index<=7&&index>=1&&y.total<=7)
{
if(y.health[index]>0)
{
moveright(&y,index);
}
cin>>y.attack[index]>>y.health[index];
y.total++;
}
}
if(ope=="attack")
{
int a,b;
cin>>a>>b;
if(flag==0&&a>=1&&a<=7&&b>=0&&b<=7)
{
x.health[a]=x.health[a]-y.attack[b];
y.health[b]=y.health[b]-x.attack[a];
if(x.health[0]<=0)
break;
if(y.health[0]<=0)
break;
if(x.health[a]<=0)
{
moveleft(&x,a);x.total--;
}
if(y.health[b]<=0)
{
moveleft(&y,b);y.total--;
}
}
else if(flag==1&&a>=1&&a<=7&&b>=0&&b<=7)
{
y.health[a]=y.health[a]-x.attack[b];
x.health[b]=x.health[b]-y.attack[a];
if(x.health[0]<=0)
break;
if(y.health[0]<=0)
break;
if(y.health[a]<=0)
{
moveleft(&y,a);y.total--;
}
if(x.health[b]<=0)
{
moveleft(&x,b);x.total--;
}
}
}
}
if(x.health[0]!=0&&y.health[0]==0)
cout<<"1"<<endl;
else if(x.health[0]==0&&y.health[0]!=0)
cout<<"-1"<<endl;
else cout<<"0"<<endl;
cout<<x.health[0]<<endl;
cout<<x.total<<" ";
for(int i=1;i<=x.total;i++)
cout<<x.health[i]<<" ";
cout<<endl;
cout<<y.health[0]<<endl;
cout<<y.total<<" ";
for(int i=1;i<=y.total;i++)
cout<<y.health[i]<<" ";
return 0;
}