青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

心如止水
Je n'ai pas le temps
posts - 400,comments - 130,trackbacks - 0

NOIp2006年的第二題,典型的動態規劃,物品之間有依賴關系。可以把物品分為若干組,每組最多有四種衍生出來的“物品”,即只選擇一個主件,選擇一個主件和一個附件(兩種),選擇一個主件和兩個附件。由題意得,每組只能選擇一個“物品”,這樣就把題目轉化成了分組背包問題。

我的做法是DFS一次(雖說是DFS,實際結點數只是4),計算出衍生出來的若干組“物品”,然后用分組背包的做法進行動態規劃。

此題目還有一個優化:因為所給數據是10的倍數,所以可以在開始時除以10,最后輸出時再乘上10,用來減少狀態數量。

 

以下是我的代碼:

#include<stdio.h>
#define SIZE 61
#define max(a,b) (a>b?a:b)
long N,m,v[SIZE],p[SIZE],q[SIZE];
long maino=0,c[SIZE][SIZE]={0},w[SIZE][SIZE]={0},d[3201]={0};
int find(int nn,int kk)
{
    
long i;
    
for(i=kk;i<=m;i++)
      
if(q[i]==nn)
         
return i;
    
return 0;
}

void dfs(long now,long ii,long weight,long cost)
{// 第now個主件 
    long t;
    t
=find(now,ii+1);
    
if(!t)
    
{
       c[maino][
0]++;
       w[maino][
0]++;
       c[maino][ c[maino][
0] ]=cost;
       w[maino][ w[maino][
0] ]=weight;
       
return;
    }

    dfs(now,t,weight,cost);
    dfs(now,t,weight
+v[t]*p[t],cost+v[t]);
}

void init()
{
    
long i,j;
    FILE 
*fin=fopen("budget.in","r");
    fscanf(fin,
"%ld%ld",&N,&m);
    N
/=10;
    
for(i=1;i<=m;i++)
      q[i]
=0;// Clear
    for(i=1;i<=m;i++)
    
{
       fscanf(fin,
"%ld%ld%ld",&v[i],&p[i],&q[i]);
       v[i]
/=10;
    }

    fclose(fin);
    
// Read In
    for(i=1;i<=m;i++)
    
{
       c[i][
0]=0;
       w[i][
0]=0;
    }

    
for(i=1;i<=m;i++)
      
if(q[i]==0)
      
{
         maino
++;
         dfs(i,
0,v[i]*p[i],v[i]);
      }

}

void dp()
{
    
long k,i,j;
    
for(k=1;k<=maino;k++)
      
for(j=N;j>=0;j--)
        
for(i=1;i<=c[k][0];i++)
          
if(j>=c[k][i])
            d[j]
=max(d[j],d[j-c[k][i]]+w[k][i]);
}

void write()
{
    FILE 
*fout=fopen("budget.out","w");
    
long i,ans=0;
      
for(i=0;i<=N;i++)
        ans
=max(ans,d[i]);
    fprintf(fout,
"%ld\n",ans*10);
    fclose(fout);
}

int main()
{
    init();
    dp();
    write();
return 0;
}

posted on 2010-01-06 19:48 lee1r 閱讀(699) 評論(1)  編輯 收藏 引用 所屬分類: 題目分類:動態規劃

FeedBack:
# re: vijos P1313 金明的預算方案 求助
2010-10-06 17:51 | dingdinglhz@gmail.com
//大牛幫幫忙!!!

#include<iostream>
using namespace std;
int c[61],w[61];//原始c、w
int kids[61][2],father[61];//主附件關系
int lc[61][4],lw[61][4];//分組后c、w
int f[3201];
int n,m,fa=0;
void init(){
int k[61];
cin>>n>>m;
for(int i=1;i<=m;i++){cin>>c[i]>>w[i]>>k[i];c[i]/=10;w[i]*=c[i];}
for(int i=1;i<=m;i++){if(!k[i]){fa++;father[fa]=i;}}
for(int i=1;i<=m;i++){
if(k[i]){
if(kids[k[i]][0]){kids[k[i]][1]=i;}
else{kids[k[i]][0]=i;}
}
}
for(int i=1;i<=fa;i++){
cout<<kids[i][0]<<" "<<kids[i][1]<<" "<<father[i]<<endl;
}
}
void make_club(){
for(int i=1;i<=fa;i++){
lc[i][0]=c[father[i]];lw[i][0]=w[father[i]];
lc[i][1]=lc[i][0]+c[kids[i][0]];lw[i][1]=lw[i][0]+w[kids[i][0]];
lc[i][2]=lc[i][0]+c[kids[i][1]];lw[i][2]=lw[i][0]+w[kids[i][1]];
lc[i][3]=lc[i][1]+lc[i][2]-lc[i][0];lw[i][3]=lw[i][1]+lw[i][2]-lw[i][0];
}
for(int i=1;i<=fa;i++){
for(int j=0;j<=3;j++){
cout<<lc[i][j]<<" "<<lw[i][j]<<endl;
}
cout<<endl;
}
}
void dp(){
for(int k=1;k<=fa;k++){
for(int v=(n/10);v>=0;v--){
//for(int v=0;v<=(n/10);v++){
for(int i=0;i<=3;i++){
if(v-lc[k][i]>=0){f[v]=max(f[v],f[v-lc[k][i]]+lw[k][i]);}
}
}
for(int v=0;v<=n/10;v++){cout<<f[v]<<" ";}
cout<<endl;
}
cout<<f[n/10]*10;
}
int main(){
//freopen("budget.in" ,"r",stdin );
//freopen("budget.out","w",stdout);
init();
make_club();
dp();
system("pause");
return 0;
}
/*
自測60分
2000 10
500 1 0
400 4 0
300 5 1
400 5 1
200 5 0
500 4 5
400 4 0
320 2 0
410 3 0
400 3 5
正確答案為7340,我的答案為7200。中間加了幾句調試,答案是最后一行;
大牛們幫幫忙!!!
  回復  更多評論
  
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美在线一级va免费观看| 国产日韩专区| 亚洲天堂成人在线观看| 亚洲精品你懂的| 亚洲天堂av综合网| 亚洲日本一区二区三区| 一区二区三区高清在线| 一区二区三区高清视频在线观看 | 合欧美一区二区三区| 国产日韩在线亚洲字幕中文| 在线 亚洲欧美在线综合一区| 在线观看亚洲a| av成人免费在线| 99这里只有精品| 午夜日韩在线观看| 久久免费高清视频| 亚洲黄一区二区三区| 亚洲一区二区三区中文字幕在线 | 欧美精品一区二| 欧美精品成人91久久久久久久| 欧美无乱码久久久免费午夜一区 | 欧美xart系列在线观看| 久久久www成人免费无遮挡大片 | 日韩视频一区| 亚洲一区日韩| 六月婷婷一区| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 久久久夜精品| 亚洲一区二区三区精品在线观看| 欧美黄色小视频| 蜜臀av一级做a爰片久久| 久久av一区二区三区漫画| 午夜精品国产精品大乳美女| 亚洲电影天堂av| 国产午夜精品一区二区三区欧美| 黄色日韩在线| 亚洲一区二区三区四区在线观看| 久久久久久一区二区三区| 99在线观看免费视频精品观看| 久久久www| 国产精品婷婷| 久久精品99国产精品酒店日本| 久久精品91久久久久久再现| 欧美日本二区| 亚洲电影免费在线| 久久精品视频亚洲| 亚洲图片你懂的| 欧美日韩国产色站一区二区三区| 韩日精品视频| 欧美主播一区二区三区美女 久久精品人| 欧美国产精品| 久久久国产91| 国产日韩欧美一区二区| 亚洲在线观看| 夜夜夜久久久| 国产精品家教| 亚洲欧美日韩精品在线| aa级大片欧美三级| 欧美视频在线一区| 亚洲一区二区三区乱码aⅴ| 亚洲日本黄色| 欧美日韩高清不卡| 伊人久久大香线蕉综合热线| 亚洲一区精品在线| 欧美激情1区2区3区| 亚洲你懂的在线视频| 亚洲视频一区二区| 亚洲国产精品www| 麻豆久久精品| 亚洲三级电影在线观看| 亚洲国产精品va在线看黑人| 欧美成人一区在线| 亚洲精品国产精品国自产观看浪潮 | 国产精品xvideos88| 亚洲福利视频网| 久久综合一区| 亚洲国产欧美在线人成| 欧美国产综合视频| 欧美日韩另类丝袜其他| 另类天堂av| 欧美国产一区二区在线观看| 午夜伦理片一区| 免费欧美日韩| 免费不卡中文字幕视频| 激情欧美国产欧美| 欧美高清视频一二三区| 猛男gaygay欧美视频| 亚洲精品久久久久久久久久久久 | 欧美一区1区三区3区公司| 狠狠网亚洲精品| 亚洲日本视频| 国产伦精品一区二区三| 蜜桃av一区| 欧美三级视频在线| 久久国产夜色精品鲁鲁99| 久久一区二区三区超碰国产精品 | 免费在线欧美黄色| 欧美激情1区2区| 欧美尤物巨大精品爽| 久久视频这里只有精品| 亚洲欧美99| 久久免费精品视频| 亚洲午夜精品网| 久久久精品动漫| 久久婷婷av| 亚洲国产日韩欧美在线动漫| 欧美日韩一区二区三区免费看| 亚洲国产99精品国自产| 一本大道av伊人久久综合| 狠狠做深爱婷婷久久综合一区| 欧美高清视频在线| 国产视频在线一区二区| 91久久夜色精品国产九色| 国产精品午夜春色av| 欧美国产视频日韩| 国产色产综合色产在线视频| 日韩视频一区二区| 亚洲国产视频一区| 亚洲欧美日韩网| 一区二区欧美亚洲| 美女诱惑一区| 久久亚洲高清| 国产日韩欧美在线视频观看| 亚洲人成久久| 91久久在线视频| 久久成人av少妇免费| 一区二区三区四区五区精品视频| 久久亚洲精品一区| 久久蜜桃资源一区二区老牛 | 欧美一区综合| 久久成人综合网| 国产精品视频免费观看| 9色国产精品| 亚洲图中文字幕| 欧美日韩免费区域视频在线观看| 亚洲国产一区二区三区青草影视 | 久久久精品网| 国产视频在线一区二区| 欧美一区二区三区日韩| 亚洲欧美另类国产| 国产精品高精视频免费| 一区二区三区精品视频| 亚洲午夜国产一区99re久久 | 欧美日韩影院| 亚洲国产精品电影在线观看| 欧美日韩123| 亚洲欧洲午夜| 亚洲免费观看高清完整版在线观看熊| 免费成人在线观看视频| 欧美激情欧美狂野欧美精品| 亚洲黄色影片| 欧美日韩国产小视频| 中日韩午夜理伦电影免费| 亚洲欧美一区二区原创| 国产欧美日韩精品丝袜高跟鞋| 性欧美videos另类喷潮| 蜜桃av一区| 这里只有精品视频在线| 国产精品一区二区久久久久| 欧美在线视频网站| 欧美jizz19hd性欧美| av不卡在线| 国产亚洲综合精品| 蜜桃视频一区| 亚洲色在线视频| 麻豆精品视频| 99热免费精品| 国产精品av免费在线观看| 欧美在线观看你懂的| 一本不卡影院| 男人的天堂成人在线| 亚洲区一区二区三区| 欧美日本不卡高清| 久久爱www久久做| 亚洲国产精品精华液2区45| 亚洲午夜激情网页| 亚洲高清不卡在线观看| 欧美性大战久久久久久久蜜臀| 欧美有码在线观看视频| 亚洲第一精品夜夜躁人人爽| 亚洲一区二区免费看| 亚洲第一在线综合在线| 国产精品乱码久久久久久| 久久综合五月| 欧美在线观看视频在线| 亚洲毛片在线看| 久久一区二区精品| 亚洲开发第一视频在线播放| 国产精品久久久久77777| 麻豆国产va免费精品高清在线| 亚洲伊人色欲综合网| 亚洲第一精品在线| 久久久久久久91| 亚洲综合精品四区| 亚洲伦理网站| 91久久精品一区二区三区| 国产午夜精品理论片a级探花| 欧美三级视频在线播放| 欧美日韩1区2区3区| 欧美/亚洲一区|