#include <bits/stdc++.h>
using namespace std;
struct Sui{
int h;
int a;
Sui(int _h,int _a):h(_h),a(_a){}
};
vector<Sui> vs[2];
int main()
{
int n;
cin>>n;
string type;
int pos,h,a;
int ar,dr;
int flag=0;//0先手玩家,1后手玩家
vs[0].push_back(Sui(30,0));
vs[1].push_back(Sui(30,0));
while(n--){
cin>>type;
if(type[0]!='e'){
if(type[0]=='s'){//召唤随从
cin>>pos>>a>>h;
vs[flag].insert(vs[flag].begin()+pos,Sui(h,a));
}else if(type[0]=='a'){//攻击
cin>>ar>>dr;
vs[flag][ar].h-=vs[flag^1][dr].a;
vs[flag^1][dr].h-=vs[flag][ar].a;
if(vs[flag][ar].h<=0&&ar!=0)//英雄不能被除去
vs[flag].erase(vs[flag].begin()+ar);
if(vs[flag^1][dr].h<=0&&dr!=0)
vs[flag^1].erase(vs[flag^1].begin()+dr);
if(vs[flag][0].h<=0||vs[flag^1][0].h<=0)
break;
}
}else{
flag=flag^1;//0-1.1-0.
}
}
if(vs[0][0].h<=0&&vs[1][0].h>0)
cout<<-1<<endl;
else if(vs[1][0].h<=0&&vs[0][0].h>0)
cout<<1<<endl;//先手玩家胜
else
cout<<0<<endl;
//int flag=0;
for(int i=0;i<2;i++){
cout<<vs[i][0].h<<'\n'<<vs[i].size()-1;
for(int j=1;j<vs[i].size();j++){
cout<<' '<<vs[i][j].h;
}
if(i==0)cout<<'\n';
}
return 0;
}
CCF 201609-3 炉石传说
最新推荐文章于 2023-03-10 03:38:05 发布