日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

三国风云

發布時間:2024/1/8 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 三国风云 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
**1143: 三國風云** **時間限制: 2 Sec 內存限制: 128 MB** **題目描述** 在公元前184~280年,在華夏大地上建立起了許多國家,其中最強的三個就是,魏國、蜀國、吳國。人們稱這一時期為“三國”。 小明是一個超級三國迷,他喜歡三國中的英雄及其故事。在眾多英雄中,他最喜歡的就是戰神呂布。 呂布是三國中最具有戰斗天賦的一個,有“God of War”之稱,雖然他的戰斗力十分強大,但是他的野心太大。許多諸侯都想把他殺死。在公元前198年,曹操發現呂布正在徐州城。雖然呂布被成為戰爭之神,但是曹操擁有眾多武將:許褚、典韋、夏侯淳等等。面對如此眾多的英雄,呂布能戰勝他們獲得勝利么? ![](https://img-blog.csdn.net/20180707211018528) 給出呂布的ATI,DEF,HP,以及對手的ATI,DEF,HP,和experience(如果呂布將對手殺死,他將得到這個數值的經驗,如果他總經驗到達等級數*100,他將升級,并且變得更加強大)。 每一個回合,呂布將選擇一個對手,與自己決斗。請你幫助呂布找到一個戰勝所有對手的策略,并使得所有戰斗結束之后的HP值最大。 下面是一場呂布和A之間的戰斗: 如果呂布攻擊A,A將會受到Max(1,呂布的ATI-A的DEF)的傷害,并且hp減去該傷害; 如果A在上一輪攻擊中幸存下來了,他將反擊,并對呂布造成Max(1,A的ATI-呂布的DEF)的傷害 如果呂布仍然存活,那他將繼續攻擊,直到有一方死亡(hp<=0). **輸入** 第一行包含六個數。分別為呂布的ATI,DEF,HP以及In_ATI,In_DEF,In_HP。 然后給出一個整數N(0 < N <= 20),表示敵人的數目。 下面有N行,每行開始,一個字符串,name(不超過20個字符,表示武將名字),以及改名武將的ATI,DEF,HP,experience(1 < experience <= 100). **輸出** 如果呂布掛了,輸出"Poor LvBu,his period was gone." 否則輸出呂布能省下最大的HP。 **樣例輸入** 100 80 100 5 5 5 2 ZhangFei 95 75 100 100 XuChu 90 90 100 90 **樣例輸出** 30 **提示** 100 75 100 5 5 5 1 GuanYu 95 85 100 100 Poor LvBu,his period was gone. **題解:** 同學們題目要讀清楚啊。 應該是一道很水的狀壓dp吧,枚舉一下狀態,然后模擬。 **Code:** #include<bits/stdc++.h> #define xp i|(1<<j-1) #define N 1<<21 using namespace std; int atii[25],defi[25],hpi[25],expi[25]; int ati[N],def[N],hp[N],expn[N],in_ati,in_def,in_hp,n; char ch[25]; int main() {scanf("%d%d%d%d%d%d",&ati[0],&def[0],&hp[0],&in_ati,&in_def,&in_hp);scanf("%d",&n);for(int i=1;i<=n;i++)scanf("%s%d%d%d%d",ch,&atii[i],&defi[i],&hpi[i],&expi[i]);for(int i=0;i<(1<<n)-1;i++){if(hp[i]==0)continue;for(int j=1;j<=n;j++)if((i&(1<<j-1))==0){int x=((hpi[j]-1)/max(1,ati[i]-defi[j]))*max(1,atii[j]-def[i]);if(x>=hp[i])continue;int y=(expn[i]+expi[j])/100;expn[xp]=(expn[i]+expi[j])%100;ati[xp]=ati[i]+y*in_ati;def[xp]=def[i]+y*in_def;hp[xp]=max(hp[xp],hp[i]+y*in_hp-x);}}if(hp[(1<<n)-1])printf("%d\n",hp[(1<<n)-1]);elseputs("Poor LvBu,his period was gone.");return 0; }

總結

以上是生活随笔為你收集整理的三国风云的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。