終極爐石程序設計題:瓦莉拉的小夥伴
文章推薦指數: 80 %
李天師放出的山東省省賽計算魚人騎斬殺的一道ACM題,作為安徽省省賽三屆出題者想說講道理那題是個水題,我去年出的計算刀油賊斬殺的題目才叫一個噁心。
這是我根據當時熱門的爐石傳說卡組刀油賊的玩法給2015安徽省賽出的題目,解法就是模擬玩法+暴力搜索所有情況,跑完所有測試數據需要1分鐘;題面很長,沒玩過爐石基本做不出來,就是為了卡中科大的人讓他們不能AK。
。
。
出題時是去年4月份,跟實驗室一起打爐石的師弟測試數據和算法測試了好久,結果現在環境退了,刀油消失,亂舞削弱,物是人非。
想要挑戰這題的小夥伴可以戳合肥工業大學OJ,Problem 1347。
瓦莉拉的小夥伴
問題描述
《爐石傳說》是暴雪公司出品的一款卡牌類對戰遊戲,俗話說暴雪出品必屬精品,《爐石傳說》集休閒性與競技性於一體的,是科研之餘燒腦休閒的必備神器。
zz_2215是一個土豪玩家,充了很多錢組了一套刀油賊,這是一套對技術要求很高的瞬間爆發斬殺型牌組,但是zz_2215的技術實在太菜了,連小學生的算術都做不好,並不能在天梯中快速上分。
RudySnow在一旁看不下去了,決定幫zz_2215一把,計算此時zz_2215能否斬殺對方,贏得比賽勝利。
如果你沒有玩過《爐石傳說》,下面是遊戲的規則。
對戰在兩個玩家之間展開,每個玩家扮演一個英雄,每個英雄有一些血量,當某個英雄血量降為0或以下的時候扮演他的玩家就輸了,對方玩家獲得勝利。
玩家之間每回合輪流打出一些牌,每張牌消耗一定的法力值,每回合英雄可用的總的法力值是有限的,該回合打出的牌的法力值總消耗不能超過該回合英雄可用的法力值。
玩家可以打出的牌分為隨從和法術牌。
打出隨從牌會在自己場上放置一個隨從,隨從擁有攻擊力和血量,可以攻擊對方場上隨從或英雄。
若攻擊對方英雄,對方英雄失去相應的血量;若攻擊對方隨從,兩隨從進行比較,雙方隨從血量都要減去對方攻擊力造成的傷害,若隨從血量降為0或以下則該隨從死亡。
例如我方場上有一個4攻擊力3血量的隨從,對方場上有一個3攻擊力4血量的隨從,敵方隨從攻擊我方隨從,雙方隨從都會死亡。
每個隨從每回合只能攻擊一次,且在一般情況下,當回合上場的隨從不能展開攻擊。
但是隨從可以有一些屬性,此處考慮的屬性為衝鋒和嘲諷。
擁有衝鋒屬性的隨從上場的當回合可以立刻展開攻擊。
當場上具有嘲諷屬性的隨從時,對方英雄和隨從攻擊時必須先攻擊該嘲諷隨從,除非該嘲諷隨從死亡才能攻擊其他隨從和英雄。
(法術牌不受嘲諷效果影響,如果卡牌效果允許則法術牌可以選擇任意目標)
法術牌不在場上打出隨從,但是擁有各種各樣的效果,後面會具體講解一些法術牌的效果。
你控制的英雄是潛行者瓦莉拉,她有一些特殊的職業專屬效果。
比如每回合她可以使用2點法力值的英雄技能一次(每回合只能使用英雄技能一次),獲得一把攻擊力為1,耐久度為2的匕首,使用這把匕首英雄可以攻擊對方隨從或英雄,對其造成等同於匕首攻擊力的傷害;若攻擊對象是對方隨從,瓦莉拉會受到等同於對方隨從攻擊力的傷害(如果瓦莉拉血量小於對方隨從攻擊力瓦莉拉會死亡)。
每回合最多只能使用匕首攻擊一次,且攻擊一次後匕首耐久度降低1點,若匕首耐久度降為0或以下該匕首會被摧毀。
潛行者還有一個特殊的職業特性是連擊,若她的某張法術牌有連擊特性,那麼如果你在打出該張卡片前打出過其他卡片,就能觸發卡片的連擊效果。
例如某張法術牌的效果是「對敵方英雄造成2點傷害;連擊:對敵方英雄造成4點傷害」,那麼這一回合你只打出這張法術牌,能對敵方英雄造成2點傷害,但是如果你在打出這張法術牌前使用了其他的隨從或法術牌,然後再打出這張牌,就能對敵方英雄造成4點傷害。
連擊必須由其他卡片觸發,英雄技能並不能觸發連擊。
本題中你扮演英雄瓦莉拉,當前是你的行動回合,你的場上沒有隨從,也未裝備匕首,對方場上可能會有一些隨從,這些隨從都帶有嘲諷屬性。
題目會給出當前對方英雄的血量,以及你的英雄血量,可用法力值,手牌中的隨從和法術牌情況,對方場上的隨從情況。
請你計算在當前回合能否通過使用英雄技能和一套最優的出牌順序,在自己英雄不死亡的前提下,將對方英雄血量擊殺到0或以下,完成斬殺。
你可能擁有的卡牌為:
南海船工:消耗法力值1,攻擊力2,血量1,特效:在你正裝備一把匕首時獲得衝鋒,否則不衝鋒(你唯一可能擁有的隨從牌,並且最多可能擁有1張,你的其餘牌都是法術牌)
伺機待發:消耗法力值0,特效:本回合中你施放的下一個法術牌的法力值消耗減少3點,但不小於0點
致命藥膏:消耗法力值1,特效:使你的匕首增加2點攻擊力(若使用時沒有裝備匕首則無效果但仍消耗法力值)
劍刃亂舞:消耗法力值2,特效:直接摧毀你的匕首,對敵方英雄和所有敵方隨從角色造成等同於匕首攻擊力的傷害(若使用時沒有裝備匕首則無效果但仍消耗法力值)
刺骨:消耗法力值2,特效:對敵方英雄或任意一個敵方隨從造成2點傷害;連擊:對敵方英雄或任意一個敵方隨從造成4點傷害
悶棍:消耗法力值2,特效:將一個指定的敵方場上隨從悶回對方手牌中。
(必須對敵方隨從使用,若敵方場上沒有隨從則無法使用)
修補匠的磨刀油:消耗法力值4,特效:使你的匕首增加3點攻擊力(若使用時沒有裝備匕首則無效果但仍消耗法力值);連擊:使你的匕首增加3點攻擊力,同時使一個隨機的我方場上隨從增加3點攻擊力(若使用時沒有裝備匕首則只增加隨從的攻擊力)
輸入
首先是一個正整數T(0
接下來是T組數據
每組數據第一行是兩個正整數n1,n2(0
下面一行是一個正整數m(0
下面一行是一個整數t1(0<=t1<=10),表示該回合我方可用的手牌數量
下面一行有t1個正整數,每個正整數表示我方擁有的手牌,和題目描述中的對應,例如為1 1 2 2,就表示我方當前擁有兩張南海船工和兩張伺機待發(若t1=0即沒有手牌時沒有這一行輸入)
下面一行是一個整數t2(0<=t2<=7),表示敵方場上的隨從數量,若t2等於0則輸入結束,若t2>0,下面是t2行,每行有兩個整數a,b用來表示一個敵方隨從(所有敵方隨從默認具有嘲諷屬性),a(0<=a<=12)表示該隨從的攻擊力,b(0
輸出
對每組數據表示的場面,若通過特定的出牌順序可以完成斬殺,輸出「Bao Qian」,若並不能完成斬殺,輸出「Da De Bu Cuo」,每個輸出單獨占一行
樣例輸入
2
1 30
10
10
1 2 2 3 4 5 5 6 7 7
0
30 1
1
4
3 5
樣例輸出
Bao Qian
Da De Bu Cuo
註:看到了最後的抱歉與打得不錯,囧。
這裡猜測一下,可能是為了整體難度下降所以爆刀可以空發?
歡迎加入我們的爐石qq群:304910611,共同交流遊戲心得。
冒險模式
熱門攻略
熱門卡組
梟雄的謝幕演出《爐石傳說》本周亂斗攻略
眾所周知,由於爐石傳說即將進入所謂的「退環境」,玩家將無法在4月份更新後的標準模式當中繼續使用副本「納克薩瑪斯」中的任何卡牌,而作為納克薩瑪斯絕對核心的克爾蘇加德也將退出歷史舞台,不過本周的爐石...
旅店老闆組織了一場看臉的比賽,爐石全新亂斗命運交響曲
又到了每周四《爐石傳說》大亂斗的時候了,本周亂斗和往常可不太一樣,可以說是一次亂斗大合集,幾乎包括了所有的亂斗形式......就看玩家老爺們喜歡啥,選擇啥了!進入遊戲只看本次亂斗的名字:命運交響...
爐石傳說女巫森林新冒險模式BOSS預覽 各BOSS技能介紹
狗頭人冒險模式大成功後暴雪似乎愛上了這種地下城挑戰各類BOSS的模式,當然,這對玩家來說也是好事情,能體驗到更加豐富多彩的玩法,何樂而不為呢?本次冒險模式提供了4個英雄角色可供大家使用,都是新版...
爐石傳說女巫森林版本新卡牌新詞綴效果匯總
《爐石傳說》最新擴展包「女巫森林」包含了135張全新卡牌!在「女巫森林」擴展包正式上線後的一段時間內,登錄遊戲即可免費領取3包全新卡牌包和1張隨機的「女巫森林」傳說級別卡牌!