<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 36,  comments - 3,  trackbacks - 0
    最近xhd正在玩一款叫做FATE的游戲,為了得到極品裝備,xhd在不停的殺怪做任務。久而久之xhd開始對殺怪產生的厭惡感,但又不得不通過殺怪來升完這最后一級。現在的問題是,xhd升掉最后一級還需n的經驗值,xhd還留有m的忍耐度,每殺一個怪xhd會得到相應的經驗,并減掉相應的忍耐度。當忍耐度降到0或者0以下時,xhd就不會玩這游戲。xhd還說了他最多只殺s只怪。請問他能升掉這最后一級嗎?

    Input
    輸入數據有多組,對于每組數據第一行輸入n,m,k,s(0 < n,m,k,s < 100)四個正整數。分別表示還需的經驗值,保留的忍耐度,怪的種數和最多的殺怪數。接下來輸入k行數據。每行數據輸入兩個正整數a,b(0 < a,b < 20);分別表示殺掉一只這種怪xhd會得到的經驗值和會減掉的忍耐度。(每種怪都有無數個)

    Output
    輸出升完這級還能保留的最大忍耐度,如果無法升完這級輸出-1。

    Sample Input
    10 10 1 10
    1 1
    10 10 1 9
    1 1
    9 10 2 10
    1 1
    2 2

    Sample Output
    0
    -1
    1

    二維費用的背包問題是指:對于每件物品,具有兩種不同的費用;選擇這件物品必須同時付出這兩種代價;對于每種代價都有 一個可付出的最大值(背包容量)。問怎樣選擇物品可以得到最大的價值。設這兩種代價分別為代價1和代價2,第i件物品所需的兩種代價分別為a[i]和 b[i]。兩種代價可付出的最大值(兩種背包容量)分別為V和U。物品的價值為w[i]。

    費用加了一維,只需狀態也加一維即可。設f[i][v][u]表示前i件物品付出兩種代價分別為v和u時可獲得的最大價值。狀態轉移方程就是:

    f[i][v][u]=max{f[i-1][v][u],f[i-1][v-a[i]][u-b[i]]+w[i]}

    如前述方法,可以只使用二維的數組:當每件物品只可以取一次時變量v和u采用逆序的循環,當物品有如完全背包問題時采用順序的循環。當物品有如多重背包問題時拆分物品。 

    #include<stdio.h>
    #include<string>
    int main()
    {
     int n,m,c,s;
     while(scanf("%d %d %d %d",&n,&m,&c,&s)!=EOF)
     {
      int a[101];
      int b[101];
      int f[100][100]={0};
      int M;
      int i,j,k;
      for(i=1;i<=c;i++)
      {
       scanf("%d %d",a+i,b+i);
      }
      for(i=1;i<=s;i++)
      {
       for(j=1;j<=m;j++)
       {
        if(f[i][j-1]<f[i-1][j])
         M=f[i-1][j];
        else
         M=f[i][j-1];
        for(k=1;k<=c;k++)
        {
         if(j>=b[k])
         { if(M<f[i-1][j-b[k]]+a[k])
          M=f[i-1][j-b[k]]+a[k];
         }
         
        }
        f[i][j]=M;//M為保留的忍耐度m得到的經驗值
       }
      }

      if(f[s][m]<n)
       printf("-1\n");
      else
      {
       for(i=m;;i--)
        if(f[s][i]<n)
          break; 
       printf("%d\n",m-i-1);
      }
     }
    }


     




    posted on 2012-07-14 15:41 天YU地___PS,代碼人生 閱讀(132) 評論(0)  編輯  收藏

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    <2012年7月>
    24252627282930
    1234567
    891011121314
    15161718192021
    22232425262728
    2930311234

     一定要好好學習,天天向上!

    常用鏈接

    留言簿

    隨筆分類(8)

    隨筆檔案(35)

    文章分類

    文章檔案(1)

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 久久精品国产亚洲av麻豆图片| 国产99视频精品免费视频7| 亚洲VA中文字幕无码一二三区 | 91久久青青草原线免费| 亚洲国产高清视频| 一级毛片成人免费看免费不卡| 亚洲五月六月丁香激情| 国产精品成人观看视频免费| 亚洲永久中文字幕在线| 成人免费a级毛片无码网站入口 | 自拍偷自拍亚洲精品被多人伦好爽| 国产免费人成视频在线播放播 | 亚洲A丁香五香天堂网| 一级做受视频免费是看美女| 青青草原亚洲视频| 日韩人妻无码精品久久免费一 | 国产成人精品日本亚洲专区6| 大陆一级毛片免费视频观看 | 亚洲最大在线观看| 热久久精品免费视频| 好湿好大好紧好爽免费视频| 亚洲AV无码国产精品麻豆天美| av免费不卡国产观看| 国产亚洲视频在线观看| 亚洲热线99精品视频| free哆啪啪免费永久| 久久久久亚洲AV无码去区首| 91麻豆精品国产自产在线观看亚洲| 久久成人免费播放网站| 亚洲一线产区二线产区区| 亚洲福利中文字幕在线网址| 国产精品免费福利久久| 亚洲中文无码亚洲人成影院| av在线亚洲欧洲日产一区二区| 99精品热线在线观看免费视频| 亚洲AV无码成人精品区狼人影院 | 国产成人亚洲精品狼色在线 | 成在线人免费无码高潮喷水| 亚洲日韩中文字幕天堂不卡| 男人的天堂亚洲一区二区三区| 一级黄色免费网站|