hdu 4340 Capturing a country
来源:互联网 发布:智能康复知多少 编辑:程序博客网 时间:2024/06/04 19:37
连这种题都wa,这几天是肿么了!!!!
#include<iostream> #include<vector> #include<algorithm> #include<cstdio> #include<queue> #include<stack> #include<string> #include<map> #include<set> #include<cmath> #include<cassert> #include<cstring> #include<iomanip> using namespace std; #ifdef _WIN32 #define i64 __int64 #define out64 "%I64d\n" #define in64 "%I64d" #else #define i64 long long #define out64 "%lld\n" #define in64 "%lld" #endif /************ for topcoder by zz1215 *******************/ #define FOR(i,a,b) for( int i = (a) ; i <= (b) ; i ++) #define FFF(i,a) for( int i = 0 ; i < (a) ; i ++) #define FFD(i,a,b) for( int i = (a) ; i >= (b) ; i --) #define S64(a) scanf(in64,&a) #define SS(a) scanf("%d",&a) #define LL(a) ((a)<<1) #define RR(a) (((a)<<1)+1) #define pb push_back #define CL(Q) while(!Q.empty())Q.pop() #define MM(name,what) memset(name,what,sizeof(name)) #define MAX(a,b) ((a)>(b)?(a):(b)) #define MIN(a,b) ((a)<(b)?(a):(b)) #define read freopen("out.txt","r",stdin) #define write freopen("zz.txt","w",stdout) const int inf = 0x3f3f3f3f; const i64 inf64 = 0x3f3f3f3f3f3f3f3fLL; const double oo = 10e9; const double eps = 10e-9; const double pi = acos(-1.0); const int maxn = 222; int n;int a[maxn];int b[maxn];vector<int>g[maxn];int dpy[2][maxn];int dpn[2][maxn];int f[maxn];bool vis[maxn];void df1(int now){vis[now]=true;int to;for(int i=0;i<g[now].size();i++){to = g[now][i];if(!vis[to]){f[to]=now;df1(to);}}return ;}void df2(int now){int to;int sa=0;int sb=0;int ta=inf;int tb=inf;for(int i=0;i<g[now].size();i++){to = g[now][i];if(to!=f[now]){df2(to);sa+=dpy[0][to];sb+=dpy[1][to];ta=MIN(ta,dpn[0][to]-dpy[0][to]);tb=MIN(tb,dpn[1][to]-dpy[1][to]);}}dpn[0][now]=a[now]+sa;dpn[1][now]=b[now]+sb;dpn[0][now]=MIN(dpn[0][now],ta+sa+a[now]/2);dpn[1][now]=MIN(dpn[1][now],tb+sb+b[now]/2);dpy[0][now]=MIN(a[now]/2+sa,dpn[1][now]);dpy[1][now]=MIN(dpn[0][now],b[now]/2+sb);return ;}int start(){memset(vis,false,sizeof(vis));memset(f,-1,sizeof(f));df1(1);df2(1);return MIN(dpn[0][1],dpn[1][1]);}int main(){int now,to;while(cin>>n){for(int i=1;i<=n;i++){g[i].clear();}for(int i=1;i<=n;i++){cin>>a[i];}for(int i=1;i<=n;i++){cin>>b[i];}for(int i=1;i<=n-1;i++){cin>>now>>to;g[now].pb(to);g[to].pb(now);}cout<<start()<<endl;}return 0;}
- hdu 4340 Capturing a country
- hdu 4340 Capturing a country
- HDU 4340 Capturing a country ()
- hdu - 4340 - Capturing a country - 树形dp
- HDU 4340 Capturing a country 树形DP
- HDU 4340 Capturing a country(树形DP)
- BNU 0808-A. Capturing a country [HDU 4340]
- HDU 4340 Capturing country(树状DP)
- hdu 4340 Capturing a country(树形DP) 2012 Multi-University Training Contest 5
- HDU 4340 Capturing a country 2012 Multi-University Training Contest 5
- 【树形DP】 hdu4340 Capturing a country
- HDU4340 Capturing a country 树状DP经典
- HDU4340 Capturing a country 树形dp
- HDU 5723-A - Abandoned country-最小生成树+树dp
- HDU 5723/2016多校1A Abandoned country
- HDU 5723 Abandoned country
- HDU 5723 Abandoned country
- HDU 5723 Abandoned country
- 使用CH272用作USB2.0的开发
- CListCtrl的使用
- 屏幕坐标向opengl三维坐标转换
- C 宏定义的简单总结
- Redis插入性能测试
- hdu 4340 Capturing a country
- Javascript中判断浏览器类型
- 内存泄露检查工具valgrind--通用命令选项
- 北大ACM poj1700 poj3404
- U-Boot编译过程完全分析-make ***_config 和mkconfig脚本,include/config.mk,include/config.h
- 哈希树
- url进行重写和二级域名的url重写
- 实现一个jsp页面2种格式,隐藏部分部件,显示部分部件
- hdu 1010 Tempter of the Bone