题目名称 | 252. [POI 2001] 蚂蚁和瓢虫 |
---|---|
输入输出 | mro.in/out |
难度等级 | ★★☆ |
时间限制 | 1000 ms (1 s) |
内存限制 | 128 MiB |
测试数据 | 16 |
题目来源 | BYVoid 于2009-02-02加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:1, 提交:2, 通过率:50% | ||||
BYVoid | 100 | 0.138 s | 19.61 MiB | C++ |
☜怪盗基德☞ | 0 | 8.269 s | 104.73 MiB | C++ |
本题关联比赛 | |||
20120810 |
关于 蚂蚁和瓢虫 的近10条评论(全部评论) |
---|
蚂蚁和蚜虫是共生的。蚜虫分泌出蜜汁给蚂蚁引用。蚂蚁帮助蚜虫赶走它的天敌——瓢虫。在蚂蚁山附近有一个树,这里是蚜虫生活的地方。蚜虫吸取树的汁 液。有n个蚂蚁兵,用1到n编号。一个瓢虫威胁着这个文明,它经常出现在蚜虫活动的地方。当瓢虫坐在树上时,蚂蚁兵会出动把它赶走。他们按照如下的规则:
树上的任意两点之间都只有一条路径,所有的蚂蚁都沿着它所在点到瓢虫的路径前进,每移动一个位置,花的时间是单位1。
瓢虫是非常顽固的动物,它被赶走了以后还会再停留到别的位置。然后蚂蚁继续行动。为了使问题简单化,我们假定从一个位置到达与它相邻的位置花1个单位的时间。
任务:
读入树的描述,蚂蚁的开始位置,以及瓢虫停留地点。 给出每个蚂蚁的最后的位置,以及该蚂蚁赶走瓢虫的次数。
输入:
文件的第一行,一个整数n,1<=n<=5000。表示地点的编号。接下来n-1行描述了树里的边,每行两个整数a和b,表示 这两点之间相连。然后一行是整数k,1<=k<=1000 and k<=n。是蚂蚁兵的数目。接下来k行,每行一个整数,表示蚂蚁兵开始的位置。没有两个蚂蚁位于一个位置。然后是一个整数l, 1<=l<=500,即瓢虫停留l次。下面的l行每行一个整数,表示瓢虫依次停留的位置。
输出:
k行。每行两个整数,分别表示第k个蚂蚁最后的位置以及它赶走瓢虫的次数。
Sample Input
4 1 2 1 3 2 4 2 1 2 2 2 4
Sample Output
1 0 4 2
Figure