杭州電子科技大學程式設計競賽(2016’12)- 網路同步賽 1004

來源:互聯網
上載者:User

標籤:ges   凍結   不能   ret   ace   pac   表示   大於   技術分享   

我要拿走你的蠟燭

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 0    Accepted Submission(s): 0


Problem DescriptionDarkrai最近喜歡玩《爐石傳說》,他在一局比賽中使用了吉安娜英雄,選擇了冰法套牌。


爐石傳說遊戲的目的是使對方英雄的生命值降低到0點及0點以下,誰先做到誰就獲得勝利。
爐石傳說有一個規則限制是法力水晶,每回合玩家會有一定的法力水晶(本題目中全部看作10個),每使用一張卡牌,會消耗卡牌左上方的數位法力水晶,法力水晶不夠即無法使用。

本題目中涉及到4張卡牌,分別是:火球術、寒冰箭、狗頭人地蔔師、進化的狗頭人,其中——
火球術——花費4個法力水晶,可以造成6點傷害。
寒冰箭——花費2個法力水晶,可以造成3點傷害(本題目中,不必考慮凍結效果)。
狗頭人地蔔師——花費2個法力水晶,使用後,你會召喚一個狗頭人地蔔師,然後接下來你使用的所有法術(火球術、寒冰箭)的傷害值會+1。(加成效果可以疊加,比如當你召喚2個狗頭人地蔔師後,這個傷害值會+2)。
進化的狗頭人——花費4個法力水晶,效果類比狗頭人地蔔師,不過是使傷害值+2(同樣可以疊加)。

現在,他在遊戲中被人逼到了類似這個局面!他只剩下1滴血,且場上沒有任何隨從,如果這一回合他不能打敗對手,下一回合就一定會被對手擊敗了!

現在,請聰明的你幫他算一下——他是否能打敗對手呢?


注1:狗頭人地蔔師和進化的狗頭人的效果可以疊加。
注2:本題目中,不考慮隨從攻擊,不考慮英雄技能,也不考慮實際遊戲中每種卡牌只有2張的限制(換句話說,本題目中每種卡牌張數可能大於2張),只考慮如上所述4種卡牌。Input輸入資料第一行是一個正整數T(T<=200),表示測試資料的組數。
接下來T行,每行2個正整數n(<=10), m(<=30),n表示Darkrai的手牌數,m表示對手的生命值。
接下來n行,每行一個字串,"Fire"代表一張火球術,"Ice"代表一張寒冰箭,"Dog"代表一張狗頭人地蔔師,"Evolved"代表一張進化的狗頭人。Output對於每組資料,輸出一行答案。
如果Darkrai可以擊敗對手,輸出"Yes",否則輸出"No"。 Sample Input11 6Fire Sample OutputYes解法:暴力組合,界限是花費等於10和攻擊力大於等於m就判斷Yes
#include<bits/stdc++.h>using namespace std;map<string,int>q;int main(){    int t;    cin>>t;    while(t--)    {        q.clear();        int n,m;        cin>>n>>m;        for(int i=1; i<=n; i++)        {            string s;            cin>>s;            q[s]++;        }        int flag=0;        for(int i=0;i<=10;i++)        {           for(int j=0;j<=10;j++)           {               for(int y=0;y<=10;y++)               {                   for(int z=0;z<=10;z++)                   {                         if(i<=q["Dog"]&&j<=q["Evolved"]&&y<=q["Fire"]&&z<=q["Ice"])                         {                             if(i*2+4*j+4*y+z*2<=10)                             {                                 int sum=0;                                 int sum1=1*i+j*2;                                 sum=(6+sum1)*y+(3+sum1)*z;                                 if(sum>=m)                                 {                                    // cout<<"Yes"<<endl;                                     flag=1;                                     break;                                 }                             }                         }                   }               }           }        }        if(flag==0)        {            cout<<"No"<<endl;        }        else        {            cout<<"Yes"<<endl;        }    }    return 0;}

 

杭州電子科技大學程式設計競賽(2016’12)- 網路同步賽 1004

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.