UVA 1218 Perfect Service - ACM/ICPC Kaoshiung 2006
2018-03-29 10:25
288 查看
#include<bits/stdc++.h> using namespace std; int d[10010][3]; vector<int>s[10010]; void dp(int u,int pre){ if(s[u].size()==1&&pre!=0){ d[u][0]=1; d[u][1]=0; d[u][2]=1e5; return; } d[u][0]=1; d[u][1]=0; d[u][2]=1e5; for(int i=0;i<s[u].size();i++){ int v=s[u][i]; if(v!=pre){ dp(v,u); d[u][0]+=min(d[v][0],d[v][1]); d[u][1]+=d[v][2]; } } for(int i=0;i<s[u].size();i++){ int v=s[u][i]; if(v!=pre) d[u][2]=min(d[u][2],d[u][1]-d[v][2]+d[v][0]); } } int main(){ int n,i,x,y,t; while(scanf("%d",&n)){ for(i=1;i<=n;i++) s[i].clear(); for(i=1;i<n;i++){ scanf("%d%d",&x,&y); s[y].push_back(x); s[x].push_back(y); } dp(1,0); printf("%d\n",min(d[1][0],d[1][2])); scanf("%d",&t); if(t==-1)return 0; } return 0; }
相关文章推荐
- UVA 1218 Perfect Service——dp
- DNA序列(DNA Consensus String, ACM/ICPC seoul 2006, UVa 1368)
- UVa1218 - Perfect Service(树形dp)
- UVA - 1218 Perfect Service(树形dp)
- Perfect Service - UVa 1218 dp
- DNA序列(DNA Consensus String, ACM/ICPC Seoul 2006, UVa1368)
- UVA1218 Perfect Service(染色问题--树形DP)(好题,通法)
- 树上dp 完美的服务(py)(Perfect Service)(UVa 1218)题解
- UVa 1218:Perfect Service(DP)
- 3-7 DNA序列(DNA Consensus String, ACM/ICPC Seoul 2006, UVa1368)
- UVA 1220 Party at Hali-Bula - ACM/ICPC Tehran 2006
- UVA - 1218 Perfect Service( 树形dp)
- Perfect Service UVA - 1218
- 关于“打印队列 Printer Queue, ACM/ICPC NWERC 2006, UVa 12100)"的讨论
- 例题7-13 快速幂计算(Power Calculus, ACM/ICPC Yokohama 2006, UVa1374)
- 【UVA】1218 - Perfect Service(动态规划)
- POJ 3398 / UVA 1218 Perfect Service 树形DP
- 习题3-11 换低挡装置(Kickdown, ACM/ICPC NEERC 2006, UVa1588)
- uva 1218 Perfect Service 树形dp
- UVA - 1218 Perfect Service (树形DP)