CCF-炉石传说
2016-11-09 20:40
134 查看
#include<bits/stdc++.h> using namespace std; typedef struct T{ int L ; int A ; }Doll; Doll player[2][8]; int s[2]; void summon(int who,int pos,int a,int l) { if(pos>0){ s[who]++; for(int i=s[who];i>pos;i--) player[who][i]=player[who][i-1]; player[who][pos].A=a; player[who][pos].L=l; } } void remove(int who,int pos) { if(pos>0){ for(int i=pos;i<s[who];i++) player[who][i]=player[who][i+1]; s[who]--; } } void attack(int who, int r1, int r2) { player[who][r1].L-=player[1-who][r2].A; player[1-who][r2].L-=player[who][r1].A; if(player[who][r1].L<=0) remove(who,r1); if(player[1-who][r2].L<=0) remove(1-who,r2); } int main() { player[0][0].L=player[1][0].L=30; player[0][0].A=player[1][0].A=0; char cmd[15]; int who=0,n; int a,b,c; scanf("%d",&n); while (n--){ scanf("%s",cmd); if(strcmp(cmd,"summon")==0){ scanf("%d%d%d",&a,&b,&c); summon(who,a,b,c); } if(strcmp(cmd,"attack")==0){ scanf("%d%d",&a,&b); attack(who,a,b); } if(strcmp(cmd,"end")==0) who=1-who; } if(player[0][0].L>0&&player[1][0].L<=0) printf("1\n"); else if(player[0][0].L<=0&&player[1][0].L>0) printf("-1\n"); else printf("0\n"); for(int i=0;i<2;i++){ printf("%d\n",player[i][0].L); printf("%d ",s[i]); for(int j=1;j<=s[i];j++) printf("%d ",player[i][j].L); printf("\n"); } return 0; }
相关文章推荐
- CCF炉石传说
- ccf csp 炉石传说 Java
- CCF CSP 201609-3:炉石传说
- ccf 炉石传说
- CCF-炉石传说
- CCF CSP 编程题目和解答-----试题名称:炉石传说 -------201609-3
- ccf炉石传说
- CCF CSP 201609-3 炉石传说(Java-100分)
- 4000 CCF-炉石传说
- CCF CSP 2016年9月第3题 炉石传说(模拟)
- 炉石传说 ccf 201609_3试题
- ccf-20160903--炉石传说
- CCF 201609-3 炉石传说 解题报告 模拟
- 【CCF 炉石传说 模拟题】
- CCF 201609-3 炉石传说
- CCF炉石传说
- ccf 炉石传说
- ccf认证题-炉石传说
- ccf试题 炉石传说
- ccf 201609-3 炉石传说