博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CSU-1908 The Big Escape
阅读量:5345 次
发布时间:2019-06-15

本文共 1925 字,大约阅读时间需要 6 分钟。

CSU- The Big Escape

Description

There is a tree-like prison. Expect the root node, each node has a prisoner, and the root node is the only exit. Each node can accommodate a large number of prisoners, but each edge per minute only one prisoner can pass.

Now, the big escape begins, every prisoner wants to escape to the exit.Do you know when the last one escapes from the prison.

Input

There are lots of case.

For each test case.The first line contains two integers n,m(n<=100000, 1<=m<=n), which indicates the number of nodes and the root node.
The next n-1 lines describe the tree.

Output

For each test case, you output one line “Case #%d:%d”

Sample Input

10 21 22 32 42 51 65 73 82 92 10

Sample Output

Case #1:2

题解

题意是给定一个树形监狱,每条边每分钟只能允许一个人通过,给定根节点,犯人逃到根节点就算逃出,每个节点可以存在多个犯人,问逃出的最短时间

这个题就是统计根节点最大子树有多少节点

#include
#define maxn 100050using namespace std;vector
G[maxn];int sum;void dfs(int u, int fa) { for (int i = 0; i < G[u].size(); i++) { int v = G[u][i]; if (v == fa) continue; sum++; dfs(v, u); }}int main() { int n, m; int cnt = 0; while (scanf("%d%d", &n, &m) != EOF) { cnt++; for (int i = 1; i <= 100000; i++) { G[i].clear(); } for (int i = 1; i < n; i++) { int a, b; scanf("%d%d", &a, &b); G[a].push_back(b); G[b].push_back(a); } int ans = 0; for (int i = 0; i < G[m].size(); i++) { int v = G[m][i]; sum = 0; dfs(v, m); ans = max(ans, sum); } printf("Case #%d:%d\n", cnt, ans + 1); }}/********************************************************************** Problem: 1908 User: Artoriax Language: C++ Result: AC Time:748 ms Memory:8064 kb**********************************************************************/

转载于:https://www.cnblogs.com/artoriax/p/10351639.html

你可能感兴趣的文章
【BZOJ-1055】玩具取名 区间DP
查看>>
Bit Twiddling Hacks
查看>>
LeetCode : Reverse Vowels of a String
查看>>
时间戳与日期的相互转换
查看>>
jmeter(五)创建web测试计划
查看>>
python基本数据类型
查看>>
1305: [CQOI2009]dance跳舞 - BZOJ
查看>>
关于TDD的思考
查看>>
Cocos2d-x学习之windows 7 android环境搭建
查看>>
将html代码中的大写标签转换成小写标签
查看>>
jmeter多线程组间的参数传递
查看>>
零散笔记
查看>>
MaiN
查看>>
[Python学习] 简单网络爬虫抓取博客文章及思想介绍
查看>>
触发器课程SQL Server 知识梳理九 触发器的使用
查看>>
信息浏览器从Android的浏览器中传递cookie数据到App中信息浏览器
查看>>
客户端连接linux虚拟机集群报错
查看>>
linux下部署一个JavaEE项目的简单步骤
查看>>
hash储存机制
查看>>
[Android学习系列16]Android把php输出的json加载到listview
查看>>