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

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

一次AC。

考慮當m>2時,當大頭吃掉k個果子之后,小頭只需要交叉著去吃就絕對不會有“難受值”;m==2時的情況需要考慮到。此時問題轉化為求大頭吃掉k個果子的最小難受值,具體做法為動態規劃。

《算法藝術與信息學競賽》上出了點錯。

將樹用“左兒子右兄弟”表示法表示。類似“重建道路”,考慮定義f[i][j]表示以i為根的樹上,取j個果子的最小難受值,但是這樣的話難受值無法計算出來,所以再加一維:定義f[i][j][k]表示以i為根的樹上,取j個果子的最小難受值,k==1表示i的父親被大頭吃,k==0表示i的父親被小頭吃。

所以有以下狀態轉移方程:

x1=tree[i].l;x2=tree[i].r;

f[i][j][k]=min{ f[x1][jj][1]+f[x2][j-jj-1][k]+d(1,k)*w[father[i]][i],// (*1)

                     f[x1][jj][0]+f[x2][j-jj][k]+d(0,k)*w[father[i]][i] };// (*2)

其中d(i,j)=1,(i==1&&j==1)||(i==0&&j==0&&m==2);else d(i,j)=0;

(*2)可以決策的條件是i不是根結點,因為根結點必被大頭吃掉。

狀態轉移方程中jj的取值容易推出,要考慮幾種情況,不再細述。

在進行treedp之前,要先計算出以各個結點為根的樹的結點數目。

以下是我的代碼:

#include<stdio.h>
#define maxv 301
#define maxint 200000000
typedef 
struct NODE
{
    
long x,l,r;
}
node;
long m,n,k,root,father[maxv]={0},w[maxv][maxv]={0};
long f[maxv][maxv][2],num[maxv]={0},ans;
node tree[maxv];
void ins(long fa,long son)
{
    
long p;
    
if(tree[fa].l==0)
      tree[fa].l
=son;
    
else
    
{
       p
=tree[fa].l;
       
while(tree[p].r!=0)
         p
=tree[p].r;
       tree[p].r
=son;
    }

}

void count(long node)
{
    
long x1,x2;
    
if(node==0return;
    num[node]
=1;
    x1
=tree[node].l;
    count(x1);
    num[node]
+=num[x1];
    x2
=tree[node].r;
    count(x2);
    num[node]
+=num[x2];
}

void init()
{
    
long i,j,fa,son,weight;
    scanf(
"%ld%ld%ld",&n,&m,&k);// N個頂點 M個頭 吃掉K個 
    for(i=1;i<=n;i++)
    
{
       tree[i].x
=i;
       tree[i].l
=tree[i].r=0;
    }

    
for(i=1;i<=n-1;i++)
    
{
       scanf(
"%ld%ld%ld",&fa,&son,&weight);
       ins(fa,son);
       father[son]
=fa;
       w[fa][son]
=weight;
    }
// Build a Tree
    
// Read In
    for(i=1;i<=n;i++)
      
if(father[i]==0)
      
{root=i;break;}// Find the Root
    for(i=0;i<=n;i++)
      
for(j=0;j<=n;j++)
      
{
         f[i][j][
0]=-1;
         f[i][j][
1]=-1;
      }

    count(root);
}

long d(long i,long j)
{
    
if((i==0&&j==0&&m==2)||(i==1&&j==1)) return 1;
    
return 0;
}

long dp(long node,long nn,long kk)
{
    
if(f[node][nn][kk]!=-1)
      
return f[node][nn][kk];
    
if(node==0return 0;
    
long i,x1,x2,t;
    f[node][nn][kk]
=maxint;
    x1
=tree[node].l;
    x2
=tree[node].r;
    
for(i=0;i<=num[x1];i++)
    
{
       
if(i>=nn-num[x2]-1&&i<=nn-1)
       
{
          t
=dp(x1,i,1)+dp(x2,nn-i-1,kk)+d(1,kk)*w[father[node]][node];
          
if(t<f[node][nn][kk]) f[node][nn][kk]=t;
       }

       
if(i>=nn-num[x2]&&i<=nn&&node!=root)// 只有此結點不是根節點才有可能不被大頭吃掉 
       {
          t
=dp(x1,i,0)+dp(x2,nn-i,kk)+d(0,kk)*w[father[node]][node];
          
if(t<f[node][nn][kk]) f[node][nn][kk]=t;
       }

    }

    
return f[node][nn][kk];
}

void write()
{
    printf(
"%ld\n",ans);
}

int main()
{
    init();
    
if(n>=k+m-1)
      ans
=dp(root,k,0);
    
else ans=-1;
    write();
return 0;
}

posted on 2010-01-06 19:41 lee1r 閱讀(563) 評論(0)  編輯 收藏 引用 所屬分類: 題目分類:動態規劃
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美日本不卡高清| 欧美另类一区| 欧美专区日韩专区| 欧美+日本+国产+在线a∨观看| 欧美激情第六页| 国产精品无人区| 亚洲国产黄色| 亚洲免费综合| 欧美国产免费| 午夜精品区一区二区三| 久久久久久久久久久一区| 亚洲精品黄色| 久久精品国产免费| 国产精品视频福利| 99re8这里有精品热视频免费| 亚洲欧美综合v| 91久久久久| 欧美亚洲一级片| 亚洲欧美日韩成人| 久久久久久亚洲精品杨幂换脸 | 亚洲一级一区| 久久久久久久999| 在线亚洲精品| 欧美激情成人在线视频| 亚洲国产三级| 牛牛影视久久网| 久久精品国产免费看久久精品| 国产精品久久| 亚洲无线一线二线三线区别av| 91久久久久久久久久久久久| 噜噜噜久久亚洲精品国产品小说| 国产亚洲激情| 性久久久久久| 亚洲免费一区二区| 国产精品午夜国产小视频| 亚洲一区精彩视频| 在线性视频日韩欧美| 欧美视频一区在线观看| av成人激情| 99riav久久精品riav| 欧美日韩人人澡狠狠躁视频| 在线一区观看| 亚洲自拍偷拍视频| 欧美日韩三区四区| 一区二区久久| 亚洲美女色禁图| 欧美午夜精品伦理| 欧美一区二区三区四区高清| 亚洲欧美日韩精品久久奇米色影视| 欧美一区二区在线观看| 国产在线精品二区| 美脚丝袜一区二区三区在线观看| 久久久久国产一区二区三区| 亚洲高清精品中出| 亚洲精品欧美日韩专区| 欧美四级伦理在线| 久久av在线看| 久久三级福利| 亚洲欧洲在线一区| 亚洲精品国产系列| 国产欧美欧美| 欧美不卡一区| 中国成人亚色综合网站| 国产女优一区| 欧美成人按摩| 欧美日韩在线另类| 久久成人综合网| 免费欧美在线| 亚洲欧洲av一区二区三区久久| 小处雏高清一区二区三区 | 欧美在线视频在线播放完整版免费观看| 亚洲激情一区二区| 国产日韩精品一区二区浪潮av| 免费观看国产成人| 国产精品久久久久婷婷| 欧美国产精品| 国产精品久久久久久影视| 浪潮色综合久久天堂| 欧美久久视频| 久久久久.com| 欧美日韩专区| 亚洲女同在线| 亚洲影院免费观看| 亚洲国产综合在线看不卡| 亚洲欧美视频一区| 亚洲九九精品| 久久久久久有精品国产| 亚洲一线二线三线久久久| 免费成人网www| 久久久福利视频| 欧美午夜精品理论片a级大开眼界 欧美午夜精品理论片a级按摩 | 欧美激情亚洲精品| 久久精品国产一区二区电影| 欧美精品一区二区三区视频| 久久亚洲精品一区| 国产精品三级视频| 日韩视频免费在线| 娇妻被交换粗又大又硬视频欧美| 欧美黄色大片网站| 国产一区二区三区在线观看免费视频| 亚洲精品视频在线播放| 欧美一区激情视频在线观看| 国产精品欧美激情| 亚洲大黄网站| 好男人免费精品视频| 一本一道久久综合狠狠老精东影业 | 欧美日韩免费观看一区| 美国成人直播| 国产欧美视频一区二区三区| 中国女人久久久| 亚洲一级黄色片| 久久久中精品2020中文| 久久岛国电影| 国产性做久久久久久| 欧美国产精品va在线观看| 91久久综合| 欧美成人自拍视频| 亚洲国产高清在线| 亚洲三级免费观看| 欧美国产欧美亚洲国产日韩mv天天看完整 | 午夜精品国产| 国产精品亚洲激情| 久久免费高清| 亚洲精品免费观看| 欧美一区二区三区四区夜夜大片 | 日韩视频精品在线| 国产精品a级| 久久久精品国产一区二区三区 | 欧美大片免费| 国产精品99久久久久久久女警| 国产欧美一区二区三区久久| 免费日韩视频| 亚洲自拍啪啪| 亚洲高清视频一区| 午夜精品久久久99热福利| 狠狠干综合网| 欧美色另类天堂2015| 久久国产欧美日韩精品| 日韩视频免费观看高清完整版| 久久久另类综合| 亚洲一区二区三区涩| 又紧又大又爽精品一区二区| 国产精品乱子久久久久| 欧美电影免费观看高清完整版| 亚洲欧美另类在线观看| 亚洲靠逼com| 国产区二精品视| 欧美日韩一区二区三区在线| 久久精品亚洲一区二区| 亚洲一区二区精品视频| 亚洲国产你懂的| 久久久91精品国产一区二区精品| 一区二区久久久久久| 亚洲国产精品久久人人爱蜜臀| 国产九色精品成人porny| 欧美日韩精品二区第二页| 久久亚洲一区二区三区四区| 亚洲欧美一区二区激情| 一区二区三区视频在线看| 亚洲激情偷拍| 免费欧美网站| 久久综合久久久久88| 久久成人国产精品| 午夜精品短视频| 亚洲欧美激情视频| 一区二区三区久久| 日韩视频在线观看免费| 亚洲看片免费| 亚洲精品亚洲人成人网| 亚洲激情成人| 亚洲国产天堂久久综合| 亚洲国产精品国自产拍av秋霞| 激情综合激情| 在线免费观看视频一区| 好吊一区二区三区| 激情视频亚洲| 午夜精品久久99蜜桃的功能介绍| aa国产精品| 99riav国产精品| 亚洲看片免费| 亚洲最新色图| 宅男噜噜噜66一区二区| 亚洲午夜久久久久久久久电影网| 亚洲视频在线一区| 亚洲一区在线看| 亚洲欧美福利一区二区| 欧美一区二区三区播放老司机| 午夜精品久久久久久久白皮肤| 欧美在线视频免费播放| 久久天天躁狠狠躁夜夜av| 免费在线观看日韩欧美| 欧美成人有码| 欧美三级电影大全| 国产精品尤物福利片在线观看| 欧美一区二区三区四区在线观看地址 | 欧美日韩中文在线观看| 国产精品视频一区二区三区| 国产区欧美区日韩区| 国外成人在线视频| 亚洲国产成人tv|