HDU 1054 Strategic Game (树形DP)
来源:互联网 发布:js radio 选中和不选中 编辑:程序博客网 时间:2024/04/30 08:23
#include <stdio.h>#define MAX_NODES 1500#define MIN(x, y) ( (x) < (y) ? (x) : (y) )int numOfNodes;int root;int numOfRoads;typedef struct Road{int to;int next;}Road;Road RoadArray[MAX_NODES * MAX_NODES + 1];int RoadNum;int head[MAX_NODES + 1];int visited[MAX_NODES + 1];int soldiers[MAX_NODES + 1][2];void addRoad(int from, int to){RoadNum++;RoadArray[RoadNum].to = to;RoadArray[RoadNum].next = head[from];head[from] = RoadNum;}void putSoldierOrNot(int from){soldiers[from][0] = 0;soldiers[from][1] = 1;int i, to;for (i = head[from]; i != 0; i = RoadArray[i].next){to = RoadArray[i].to;if (visited[to] == 0){visited[to] = 1;putSoldierOrNot(to);//如果父节点不放,子节点必须放soldiers[from][0] += soldiers[to][1];//如果父节点放,子节点可放可不放soldiers[from][1] += MIN(soldiers[to][0], soldiers[to][1]);}}}int main(){freopen("input.txt", "r", stdin);while (scanf("%d", &numOfNodes) != EOF){RoadNum = 0;root = -1;int i;for (i = 0; i < numOfNodes; i++){visited[i] = 0;head[i] = 0;}int j, from, to;for (i = 0; i < numOfNodes; i++){scanf("%d:(%d)", &from, &numOfRoads);if (root = -1)root = from;for (j = 0; j < numOfRoads; j++){scanf("%d", &to);addRoad(from, to);addRoad(to, from);}}visited[root] = 1;putSoldierOrNot(root);printf("%d\n", MIN(soldiers[root][0], soldiers[root][1]));}return 0;}
0 0
- hdu 1054 Strategic Game 树形dp
- Strategic Game - HDU 1054 树形dp
- hdu 1054 Strategic Game 树形dp
- hdu 1054 Strategic Game(树形DP)
- HDU 1054 Strategic Game(树形DP)
- hdu - 1054 - Strategic Game(树形dp)
- HDU 1054 Strategic Game (树形DP)
- HDU 1054 Strategic Game (树形DP)
- HDU-1054 Strategic Game(树形DP)
- hdu 1054 Strategic Game 树形DP
- HDU 1054 Strategic Game (树形DP)
- HDU 1054 Strategic Game (树形DP)
- HDU 1054Strategic Game 树形DP
- HDU 1054 Strategic Game (树形DP)
- Strategic Game+hdu+树形dp
- 1054 Strategic Game 树形DP
- HDU 1054 Strategic Game 树形DP/二分图匹配
- hdu 1054 Strategic Game 树形dp基础&&模板
- jsp基础:cookie和session
- RPC 协议学习
- Code Forces 588 A. Duff and Meat(贪心)
- ASP.NET MVC 在项目中使用面包屑导航
- Eclipse/MyEclipse Java JFrame 典型代码及可视化编辑
- HDU 1054 Strategic Game (树形DP)
- 第二章 object-c
- Android性能优化典范第二季
- centos6.5 安装matplot
- 嵌入式系统软件架构设计
- 手机连接器 fpc socket usb
- cocos2d-x之库文件(XXX.a)缺失
- JAVA正则表达式语法大全
- ios中集合遍历方法的比较和技巧