24h購物| | PChome| 登入
2009-02-14 13:29:02| 人氣396| 回應0 | 上一篇 | 下一篇

NOIP2005 普及組 NOIP2005 3.采药

推薦 0 收藏 0 轉貼0 訂閱站台

DP(背包問題)解法,目前還不是很熟,只有使用模仿的方式
要問我我也不太懂,
/***********************************************************/

  1. #include<stdio.h>   
  2. #include<stdlib.h>   
  3. main()   
  4. {   
  5.     
  6.  int a,b,c,n,max;   
  7.  while(scanf("%d %d",&max,&n)==2)   
  8.  {   
  9.   int value[1000]={0};   
  10.   int w,price,maxprice=0;   
  11.   for(a=0;a<n;a++)   
  12.     {   
  13.      scanf("%d %d",&w,&price);   
  14.      for(b=max-w;b>=0;b--)   
  15.       {   
  16.        if(value[b+w]<value[b]+price)   
  17.         {   
  18.          value[b+w]=value[b]+price;   
  19.          if(value[b+w]>maxprice)   
  20.           maxprice=value[b+w];   
  21.         }   
  22.       }    
  23.     }   
  24.     printf("%d\n",maxprice);   
  25.  }   
  26.  return 0;   
  27. } 

台長: 來源不明
人氣(396) | 回應(0)| 推薦 (0)| 收藏 (0)| 轉寄
全站分類: 數位資訊(科技、網路、通訊、家電) | 個人分類: 資訊競賽 |
此分類下一篇:NOIP2005 提高組 NOIP2005 1.誰拿了最多獎學金
此分類上一篇:NOIP2005 普及組 NOIP2005 2.校門外的樹

是 (若未登入"個人新聞台帳號"則看不到回覆唷!)
* 請輸入識別碼:
請輸入圖片中算式的結果(可能為0) 
(有*為必填)
TOP
詳全文