2016_1_13(2)

游乐场 

 (amusement.cpp/c/pas)  

【时间限制】1s

【问题描述】 

清儿进入了一个游乐场,这个游乐园有N个项目和N条不同双向道路,任意两个项目皆可以互相到达。

清儿从一个随机的项目开始玩起。每当她玩完一个项目后,她会等可能地找附近一个项目继续玩耍。所以,她也不知道自己最后会停留在哪个项目上。

还有,清儿不喜欢已经玩过的项目,连看都不想再看一眼,所以她不会再经过曾经玩过的项目。

现在她希望你能告诉她最有可能停留在哪5个项目上,并且,你只需要告诉她停留在这5个项目上的可能性的和就好啦

【输入】  

输入文件名为amusement.in

输入第一行是n,表示游乐园的项目数

接下来n行,每行2个数,描述了一条双向道路的起点和重点

显然,游乐场有一些项目形成了环,输入数据保证环上的项目数在330之间

【输出】 

输出文件名为amusement.out

输出一个实数,表示5个最有可能最后停留的项目的可能性的和。结果保留5位小数。

【输入输出样例】

10

5 8

8 3

3 1

1 5

2 1

10 8

7 8

6 7

4 10

9 10

 

0.91250

 

【数据说明】 

对于20%的数据,有1≤n≤10

对于40%的数据,有1≤n≤500

对于100%的数据,有1≤n≤100000

 

今天就是这道题坑害了我,原本以为可以一发写过的,中间过程真是要写哭我。我还是太naive了。

所以这道题真是代码能力++ 的题,考场上面YJQ做出来了好强啊。

思路就是有点像树形DP,当做没有环的搞,有环的地方在搞搞。

不想写了,调其它题吧。

posted @ 2016-01-13 15:25  443singer  阅读(126)  评论(0编辑  收藏  举报