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

心如止水
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>
            欧美大香线蕉线伊人久久国产精品| 欧美成人精品福利| 国产丝袜一区二区| 国产精品一区二区三区免费观看 | 亚洲一区二区三区四区在线观看 | 欧美在线观看一区二区| 午夜在线成人av| 久久丁香综合五月国产三级网站| 午夜精品一区二区三区四区| 久久国产精品电影| 欧美黄色aa电影| 欧美日韩在线播放一区| 国产麻豆日韩欧美久久| 亚洲高清久久久| 亚洲影院污污.| 久久综合久久综合久久综合| 最新国产の精品合集bt伙计| 亚洲精品一线二线三线无人区| aa成人免费视频| 欧美一二三区在线观看| 欧美激情视频一区二区三区免费| 国产精品久久国产三级国电话系列 | 国产欧美精品一区二区三区介绍| 久久久免费精品视频| 欧美aa国产视频| 日韩一级精品| 欧美在线国产| 欧美日韩一区二区三区在线看| 国产女精品视频网站免费| 91久久综合亚洲鲁鲁五月天| 性久久久久久久久| 亚洲人成77777在线观看网| 欧美在线观看网站| 国产精品麻豆成人av电影艾秋| 亚洲日本无吗高清不卡| 久久国产色av| 一区二区三区视频在线| 欧美99久久| 影音先锋欧美精品| 欧美主播一区二区三区| 最新69国产成人精品视频免费| 亚洲一区精品在线| 亚洲国产综合在线| 久久久亚洲影院你懂的| 国产视频在线观看一区| 亚洲图色在线| 亚洲国产女人aaa毛片在线| 久久精品观看| 国产欧美一区二区三区在线看蜜臀 | 亚洲一二三四区| 欧美成人亚洲成人日韩成人| 国产在线观看91精品一区| 午夜欧美不卡精品aaaaa| 99re66热这里只有精品4| 欧美精品一区二区三区四区| 亚洲日韩视频| 亚洲第一区中文99精品| 久久综合伊人77777麻豆| 一区二区三区在线视频观看| 久久九九国产精品怡红院| 亚洲欧美三级伦理| 国产日韩久久| 久久综合伊人| 久久天堂国产精品| 亚洲国产一区二区a毛片| 欧美成人一区二区三区在线观看| 久久久噜噜噜久久| 亚洲国产成人在线视频| 亚洲第一在线综合网站| 欧美精品一区在线| 亚洲一区二区三区激情| 亚洲天堂av综合网| 国产主播一区二区| 欧美国产日韩一二三区| 欧美理论大片| 欧美一区二区观看视频| 久久久久www| 一区二区高清视频| 欧美精品v国产精品v日韩精品| 日韩视频精品在线| 国产精品久久久久久久第一福利| 一区二区三区日韩欧美精品| 91久久精品日日躁夜夜躁欧美| 牛夜精品久久久久久久99黑人| 亚洲视频一区在线| 欧美刺激午夜性久久久久久久| 久久久久久久成人| 亚洲国产精品嫩草影院| 欧美精品一区二区蜜臀亚洲| 一区二区三区四区五区精品视频| 亚洲精品一二| 国产欧美日韩免费| 欧美激情亚洲精品| 国产精品狠色婷| 老司机亚洲精品| 欧美日韩国产高清| 久久久久久久综合日本| 欧美另类亚洲| 久久亚洲影音av资源网| 欧美激情偷拍| 久久国产精品高清| 欧美久久久久久久久久| 久久久精品动漫| 欧美日韩一区二区三区高清| 久久只有精品| 国产精品久久久爽爽爽麻豆色哟哟 | 久久综合一区二区| 亚洲欧美成人综合| 免费成人高清在线视频| 久久精彩视频| 欧美午夜一区二区三区免费大片| 久久字幕精品一区| 国产精品男gay被猛男狂揉视频| 欧美成人精品三级在线观看 | 国产精品久久久久久久午夜| 欧美成人在线免费视频| 国产欧亚日韩视频| 亚洲视频在线视频| 99香蕉国产精品偷在线观看| 久久亚洲春色中文字幕| 久久精品亚洲一区二区| 国产精品久久久久久久久久久久久| 欧美fxxxxxx另类| 国产伪娘ts一区| 亚洲免费在线播放| 亚洲综合国产精品| 欧美日韩综合久久| 亚洲剧情一区二区| 一区二区三区不卡视频在线观看 | 亚洲美女性视频| 亚洲青色在线| 在线色欧美三级视频| 国产精品久久久久一区二区三区共 | 国产欧美成人| 亚洲午夜未删减在线观看| 一区二区日韩| 欧美精品免费观看二区| 亚洲二区在线观看| 亚洲欧洲日本国产| 欧美高清在线| 亚洲久久一区| 亚洲一级一区| 国产精品成人一区二区三区吃奶| 亚洲人成免费| 亚洲一区二区三区成人在线视频精品 | 欧美激情第3页| 91久久在线视频| 正在播放欧美视频| 国产精品高潮久久| 亚洲综合大片69999| 久久国产乱子精品免费女| 国产日韩一区二区| 久久黄色级2电影| 能在线观看的日韩av| 亚洲国产精品久久久久婷婷老年| 乱人伦精品视频在线观看| 亚洲激情一区| 亚洲欧美春色| 国内精品伊人久久久久av影院| 久久久久久久网站| 亚洲欧洲三级电影| 亚洲自拍电影| 激情懂色av一区av二区av| 欧美3dxxxxhd| 中国av一区| 美女国产精品| 亚洲视频在线观看网站| 国产午夜精品福利| 欧美经典一区二区| 午夜精品久久久久久| 欧美黄色aa电影| 亚洲欧美激情视频| 亚洲电影在线观看| 国产精品裸体一区二区三区| 久久嫩草精品久久久久| 一本色道婷婷久久欧美| 鲁大师影院一区二区三区| 在线亚洲欧美| 亚洲国产日韩美| 国产精品久久久久三级| 久久综合狠狠| 亚洲欧美日韩天堂| 亚洲精品日日夜夜| 另类天堂视频在线观看| 亚洲女人天堂成人av在线| 亚洲人体偷拍| 韩日视频一区| 国产精品美女一区二区| 蜜臀va亚洲va欧美va天堂| 午夜老司机精品| av成人国产| 亚洲福利一区| 久久视频在线免费观看| 91久久久久久久久久久久久| 国产亚洲欧美一区二区三区| 欧美激情bt| 老司机午夜精品| 久久国产精品毛片| 先锋资源久久| 亚洲欧美日韩成人高清在线一区|