201609 3 ccf csp 爐石傳說

2021-10-06 04:53:48 字數 2596 閱讀 7170

《爐石傳說:魔獸英雄傳》(hearthstone: heroes of warcraft,簡稱爐石傳說)是暴雪娛樂開發的一款集換式卡牌遊戲(如下圖所示)。遊戲在乙個戰鬥棋盤上進行,由兩名玩家輪流進行操作,本題所使用的爐石傳說遊戲的簡化規則如下:

本題將給出乙個遊戲的過程,要求編寫程式模擬該遊戲過程並輸出最後的局面。

輸入第一行是乙個整數 n,表示操作的個數。接下來 n 行,每行描述乙個操作,格式如下:

< action > < arg1 > < arg2 >

其中< action >表示操作型別,是乙個字串,共有 3 種:summon表示召喚隨從,attack表示隨從攻擊,end表示結束回合。這 3 種操作的具體格式如下:

注意:隨從的編號會隨著遊戲的程序發生變化,當召喚乙個隨從時,玩家指定召喚該隨從放入戰場的位置,此時,原來該位置及右邊的所有隨從編號都會增加 1。而當乙個隨從死亡時,它右邊的所有隨從編號都會減少 1。任意時刻,戰場上的隨從總是從1開始連續編號。

輸出共 5 行。

8

summon 136

summon 242

endsummon 145

summon 121

attack 1

2end

attack 1

1

0301

23012

按照樣例輸入從第 2 行開始逐行的解釋如下:

先手玩家在位置 1 召喚乙個生命值為 6、攻擊力為 3 的隨從 a,是本方戰場上唯一的隨從。

先手玩家在位置 2 召喚乙個生命值為 2、攻擊力為 4 的隨從 b,出現在隨從 a 的右邊。

先手玩家回合結束。

後手玩家在位置 1 召喚乙個生命值為 5、攻擊力為 4 的隨從 c,是本方戰場上唯一的隨從。

後手玩家在位置 1 召喚乙個生命值為 1、攻擊力為 2 的隨從 d,出現在隨從 c 的左邊。

隨從 d 攻擊隨從 b,雙方均死亡。

後手玩家回合結束。

隨從 a 攻擊隨從 c,雙方的生命值都降低至 2。

啊♂,爐石傳說,五年老玩家8請自來。

其實這道題目的邏輯和遊戲真的非常相似,所以其實也很好理解,簡單來說就是:

這道題需要避開的幾個點:

其實實現起來還是不難的,照著遊戲思路和題目描述順著來就行了,也沒啥坑。

#include

#include

using

namespace std;

typedef

struct

node;

node a[8]

;//先手玩家的隨從們,0為玩家

int aa[8]

;//某個隨從位是否有隨從

node b[8]

;//後手玩家的隨從們,0為玩家

int bb[8]

;//某個隨從位是否有隨從

intmain()

aa[x]=1

; a[x]

.ac=y;a[x]

.life=z;

}else

if(f==2)

bb[x]=1

; b[x]

.ac=y;b[x]

.life=z;}}

if(temp==

"end"

)//回合結束

if(temp==

"attack"

)else

if(f==2)

for(

int i=

1;i<=

7;i++

)break;}

}for

(int i=

1;i<=

7;i++

)break;}

}}}if

(a[0

].life<=

0) cout<<

"-1"

<

else

if(b[0]

.life<=

0) cout<<

"1"<

else

if(a[0]

.life>

0&&b[0]

.life>

0) cout<<

"0"<

cout<

.life<

int sum=0;

for(

int i=

1;i<=

7;i++

) cout<

for(

int i=

1;i<=

7;i++

) cout<

cout<

.life<

sum=0;

for(

int i=

1;i<=

7;i++

) cout<

for(

int i=

1;i<=

7;i++

) cout<

return0;

}

CCFCSP 201609 3 爐石傳說

試題編號 201609 3 試題名稱 爐石傳說 時間限制 1.0s 記憶體限制 256.0mb 場上的兩名玩家輪流進行遊戲,每個玩家場上最多有7個隨從,而場上的隨從總是從左到右排列,即在場上不會有空位。玩家擁有兩種操作 召喚 summon 和攻擊 attack 由題意可知,隨從的召喚位置在當前場上所...

CCF CSP201609 3爐石傳說

試題編號 201609 3 試題名稱 爐石傳說 時間限制 1.0s 記憶體限制 256.0mb 問題描述 爐石傳說 魔獸英雄傳 hearthstone heroes of warcraft,簡稱爐石傳說 是暴雪娛樂開發的一款集換式卡牌遊戲 如下圖所示 遊戲在乙個戰鬥棋盤上進行,由兩名玩家輪流進行操作...

CCF CSP 201609 3 爐石傳說

一道簡單的模擬,使用乙個變數cur來記錄當前的玩家,用乙個結構體陣列來記錄當前場上的隨從,之後按照題目要求進行隨從召喚後的右移和隨從死亡後的左移即可。include include using namespace std struct servent s 2 8 int cnt 2 int n,cu...