[BZOJ1596] [Usaco2008 Jan]电话网络

原创 2015年11月21日 13:50:37

传送门

http://www.lydsy.com/JudgeOnline/problem.php?id=1596

题目大意

给定一棵树,每个点可以放置一个物品覆盖这个点直接连接的点,询问最少物品数

题解

树形DP
dp[i,1]:i放物品,使i和i的子树中节点都被覆盖的最小物品数
dp[i,2]:i不放物品,使i和i的子树中节点都被覆盖的最小物品数
dp[i,3]:i不放物品,i不被覆盖,i的子树中节点都被覆盖的最小物品数
dp[i,1]=1+min(dp[son[i],1],dp[son[i],2],dp[son[i],3])
dp[i,3]=dp[son[i],2]
dp[i,2]=min(dp[son[i],1],dp[son[i],2])+dp[son[i],1]min(dp[son[i],1],dp[son[i],2])

var
 dp:array[0..10005,1..3]of longint;
 x,y:array[0..10005]of longint;
 w:array[0..20005,1..2]of longint;
 i,j,k:longint;
 a,b,c:longint;
 n,m,len:longint;
procedure init(a,b:longint);
begin
 w[len,1]:=b;
 if w[a,2]=0
 then w[a,2]:=len else w[w[a,1],2]:=len;
 w[a,1]:=len; inc(len);
end;

function min(a,b:longint):longint;
begin
 if a<b then exit(a) else exit(b);
end;

procedure dfs(a:longint);
var tt,s:longint;
begin
 x[a]:=1; tt:=w[a,2]; dp[a,1]:=1; dp[a,2]:=0; dp[a,3]:=0; s:=n;
 while tt<>0 do
  begin
   if x[w[tt,1]]=0 then begin
    dfs(w[tt,1]);
    dp[a,1]:=dp[a,1]+min(min(dp[w[tt,1],1],dp[w[tt,1],2]),dp[w[tt,1],3]);
    dp[a,2]:=dp[a,2]+min(dp[w[tt,1],1],dp[w[tt,1],2]);
    s:=min(s,dp[w[tt,1],1]-min(dp[w[tt,1],1],dp[w[tt,1],2]));
    dp[a,3]:=dp[a,3]+dp[w[tt,1],2];
   end;
   tt:=w[tt,2];
  end;
 dp[a,2]:=dp[a,2]+s;
end;

begin
 readln(n); len:=n+1;
 for i:=1 to n-1 do
  begin
   readln(a,b);
   init(a,b); init(b,a);
  end;
 dfs(1);
 writeln(min(dp[1,1],dp[1,2]));
end.
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

【BZOJ】1596: [Usaco2008 Jan]电话网络

Description Farmer John决定为他的所有奶牛都配备手机,以此鼓励她们互相交流。不过,为此FJ必须在奶牛们居住的N(1 <= N <= 10,000)块草地中选一些建上无线电通讯塔...

Bzoj 1596: [Usaco2008 Jan]电话网络

原题网址:http://www.lydsy.com/JudgeOnline/problem.php?id=1596 有点像“没有上司的舞会”,但因为两座塔可以距离最多为3,所以要记三种状态。f[i]...

BZOJ1596: [Usaco2008 Jan]电话网络 树形DP

1596: [Usaco2008 Jan]电话网络 Time Limit: 10 Sec  Memory Limit: 162 MB Submit: 846  Solved: 386 [...

BZOJ 1612: [Usaco2008 Jan]Cow Contest奶牛的比赛

题目 1612: [Usaco2008 Jan]Cow Contest奶牛的比赛 Time Limit: 5 Sec  Memory Limit: 64 MB Descripti...

[BZOJ1612][Usaco2008 Jan]Cow Contest奶牛的比赛 dfs

题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1612 1612: [Usaco2008 Jan]Cow Contest奶牛的比赛 Time...

Floyd传递闭包-BZOJ-1612-[Usaco2008 Jan]Cow Contest奶牛的比赛

DescriptionFJ的N(1 <= N <= 100)头奶牛们最近参加了场程序设计竞赛:)。在赛场上,奶牛们按1..N依次编号。每头奶牛的编程能力不尽相同,并且没有哪两头奶牛的水平不相上下,也就...

bzoj1594[Usaco2008 Jan]Haybale Guessing猜数游戏

二分+线段树

poj3659[USACO2008,Jan]Cell Phone Network手机网络

树型dp

BZOJ3396: [Usaco2009 Jan]Total flow 水流 网络流

3396: [Usaco2009 Jan]Total flow 水流 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 400  Solved: ...

HYSBZ 1596 电话网络

题目链接:http://acm.hust.edu.cn:8080/judge/problem/viewProblem.action?id=22719 题目大意:一棵n(1~10,000)个结点的...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)