#include<cstdio>
typedef struct
{
int attack,health;
} cus; cus info[][];
int aliv[];
int player = ; void summon();
void attack();
void solven();
void del(int,int);
//void init(); int main()
{
int n=;
char order[];
//init();
scanf("%d",&n);
info[][].health = ;
info[][].health = ;
while(n--)
{
scanf("%s",order);
if(order[] == 'e')
player = !player;
else if(order[] == 's')
summon();
else if(order[] == 'a')
attack();
}
solven();
} void summon()
{
int p,a,h;
scanf("%d%d%d",&p,&a,&h);
++aliv[player];
for(int i=aliv[player]; i>p; --i)
{
info[player][i].attack = info[player][i-].attack;
info[player][i].health = info[player][i-].health;
}
info[player][p].attack = a;
info[player][p].health = h;
//init();
} void attack()
{
int p1,p2;
scanf("%d%d",&p1,&p2);
if(p2 != )
{
info[player][p1].health -= info[(!player)][p2].attack;
info[(!player)][p2].health -= info[player][p1].attack;
if(info[player][p1].health < )
del(player,p1);
if(info[(!player)][p2].health <)
del((!player),p2);
}
else
info[(!player)][p2].health -= info[player][p1].attack;
//init();
} void solven()
{
//init();
int num;
if(info[][].health < && info[][].health > )
printf("-1\n");
else if(info[][].health < && info[][].health > )
printf("1\n");
else
printf("0\n"); printf("%d\n%d",info[][].health,aliv[]);
for(int i=; i<=aliv[]; ++i)
printf(" %d",info[][i].health);
printf("\n"); printf("%d\n%d",info[][].health,aliv[]);
for(int i=; i<=aliv[]; ++i)
printf(" %d",info[][i].health);
printf("\n");
} void del(int x,int p)
{
for(int i=p; i<aliv[x]; ++i)
{
info[x][i].attack = info[x][i+].attack;
info[x][i].health = info[x][i+].health;
}
info[x][aliv[x]].attack = ;
info[x][aliv[x]].health = ;
--aliv[x];
} /*void init()
{
puts("\n*************************");
puts("player1's attack:");
for(int i=0; i<8; ++i)
printf("%d ",info[0][i].attack);
puts(""); puts("player1's health:");
for(int i=0; i<8; ++i)
printf("%d ",info[0][i].health);
puts(""); puts("player2's attack:");
for(int i=0; i<8; ++i)
printf("%d ",info[1][i].attack);
puts(""); puts("player2's health:");
for(int i=0; i<8; ++i)
printf("%d ",info[1][i].health);
puts("");
puts("*************************\n");
}*/

CCF-炉石传说的更多相关文章

  1. CCF 炉石传说(模拟)

    试题编号: 201612-3 试题名称: 炉石传说 时间限制: 1.0s 内存限制: 256.0MB 问题描述 <炉石传说:魔兽英雄传>(Hearthstone: Heroes of Wa ...

  2. CCF CSP 201609-3 炉石传说

    CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF CSP 201609-3 炉石传说 问题描述 <炉石传说:魔兽英雄传>(Hearthston ...

  3. [原创]webapp/css3实战,制作一个《炉石传说》宣传页

    在移动网页,尤其是webapp中常需要用到大量的css3动画,来获得良好交互体验 我之前帮朋友做了一个,可惜没帮上忙现在和大家分享一下 目标是要做一个<炉石传说>游戏的介绍宣传页面,文字内 ...

  4. 炉石传说 C# 开发笔记(6月底小结)

    炉石传说的开发,已经有30个工作日了. 关于法术的定义方法,有过一次重大的变更:法术效果是整个炉石的核心,正是因为丰富的法术效果,才造就了炉石的可玩性. 原来构思的时候,对于法术效果没有充分的理解,所 ...

  5. 炉石传说 C# 开发笔记 (续)

    炉石传说山寨的工作一直在进行着,在开发过程中深深体会到,对于业务的理解和整个程序的架构的整理远比开发难得多. 在开发过程中,如果你的模型不合理,不准确,很有可能造成代码的混乱,冗余,难以维护和扩展性比 ...

  6. 炉石传说 C# 开发笔记

    最近在大连的同事强力推荐我玩 炉石传说,一个卡牌游戏.加上五一放一个很长很长的假期,为了磨练自己,决定尝试开发一个C#的炉石传说. 这件事情有人已经干过了,开发了一个网页版的炉石,但是貌似不能玩... ...

  7. 炉石传说__multiset

     炉石传说  Problem Description GG学长虽然并不打炉石传说,但是由于题面需要他便学会了打炉石传说.但是传统的炉石传说对于刚入门的GG学长来说有点复杂,所以他决定自己开发一个简化版 ...

  8. 《炉石传说》建筑设计欣赏(6):卡&amp;在执行数据时,组织能力

    上一篇文章我们看到了<炉石传说>核心存储卡的数据,今天,我们不断探索卡&身手. 基本的类 通过之前的分析,卡牌&技能涉及到几个类体系:Entity.Actor.Card.S ...

  9. fzu Problem - 2232 炉石传说(二分匹配)

    题目链接:http://acm.fzu.edu.cn/problem.php?pid=2232 Description GG学长虽然并不打炉石传说,但是由于题面需要他便学会了打炉石传说.但是传统的炉石 ...

  10. islands打炉石传说<DP>

    islands最近在完一款游戏"炉石传说",又名"魔兽英雄传".炉石传说是一款卡牌类对战的游戏.游戏是2人对战,总的来说,里面的卡牌分成2类,一类是法术牌,另一 ...

随机推荐

  1. cf1108E2 线段树类似扫描线

    /* 有点像扫描线 思路:从左到右枚举每个点,枚举到点i时,把所有以i为起点的区间的影响删去 再加上以i-1为结尾的区间的影响 */ #include<bits/stdc++.h> usi ...

  2. Android播放图片动画

    1.布局文件中添加ImageView <ImageView android:id="@+id/iv_fan" android:layout_width="wrap_ ...

  3. Python内置模块之time模块

    1:概述 时间表示的分类 时间戳 格式化的时间字符串 结构化时间 时间戳:时间戳表示的是从1970年1月1日整0点到目前秒的偏移量,数据类型是浮点型,主要用来让计算机看的 格式化的时间字符串:如 20 ...

  4. Just oj 2018 C语言程序设计竞赛(高级组)H: CBT?

    H: CBT? 时间限制: 1 s      内存限制: 128 MB      提交 我的状态 题目描述 对于二叉树,如果这棵树的节点排布是按行从上到下,每行从左到右挨个放置,中间不会有空闲的节点. ...

  5. Python自定义-分页器

    Python自定义-分页器 分页功能在每个网站都是必要的,对于分页来说,其实就是根据用户的输入计算出应该在数据库表中的起始位置. 1.设定每页显示数据条数 2.用户输入页码(第一页.第二页...) 3 ...

  6. SQLServer索引及统计信息

    索引除了提高性能,还能维护数据库. 索引是一种存储结构,主要以B-Tree形式存储信息. B-Tree的定义: 1.每个节点最多只有m个节点(m>=2) 2.除了根节点和叶子节点外的每个节点上最 ...

  7. .netcore读取配置文件

    setting.json { "compilerOptions": { "noImplicitAny": false, "noEmitOnError& ...

  8. CORS跨域

    一:简介 为什么会出现跨域问题? 受同源策略影响,不同域名之间不可以进行访问.同源策略(Same-Origin Policy).所谓的 同源 是指域名.协议.端口号 相同.不同的客户端脚本(JavaS ...

  9. [转] 那些在使用webpack时踩过的坑

    用webpack的过程,就是一个不断入坑和出坑的过程.回望来时路,一路都是坑啊!现把曾经趟过的那些坑整理出来,各位看官有福了~ 文章末尾有我用到的依赖的版本信息,若你发现某个问题与我在本文中的描述不一 ...

  10. C 语言的 GCC 扩展

    GNU 编译器(GCC)提供了很多 C 语言扩展,编译器会使用该信息生成更高效的机器代码. 内联函数 static inline __attribute__ ((always_inline)) int ...