题目名称 | 2446. [HZOI 2016]水母 |
---|---|
输入输出 | Jellyfish.in/out |
难度等级 | ★★★ |
时间限制 | 5000 ms (5 s) |
内存限制 | 512 MiB |
测试数据 | 10 |
题目来源 | _Itachi 于2017-02-20加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:1, 提交:4, 通过率:25% | ||||
_Itachi | 100 | 4.603 s | 114.73 MiB | C++ |
_Itachi | 0 | 0.003 s | 0.30 MiB | C++ |
NewBee | 0 | 0.423 s | 0.30 MiB | C++ |
Sky_miner | 0 | 0.720 s | 0.33 MiB | C++ |
关于 水母 的近10条评论(全部评论) | ||||
---|---|---|---|---|
本题本机1s就能过的,但这里死活2.5s~3.0s所以开了5s时限,希望写部分分的童鞋不要卡评测鸡。
_Itachi
2017-05-29 21:04
1楼
|
水母与树有着密切的联系,水母的很多性质可以由树拓展而得,水母的很多问题可以由断链后的树解决。
某天,小TLE正在研究水母,突然他有了一个疑问:水母的深度是什么?
这个问题对小TLE来说太难了!!因为他并不能确定谁是水母的根!!
于是小TLE找到了CE学长,CE学长:你先去解决这道与深度有关的问题,我再教你这道题!
CE学长的问题是这样的:
已知一个有n个结点的树的dfs序和bfs序,求其可能的深度的范围。
小TLE当然不会这个问题了,于是他又找到了你:小RE!
第一行一个整数n
接下来一行n个整数表示dfs[i]
接下来一行n个整数表示bfs[i]
输出两个整数mn,mx表示这棵树的深度范围[mn,mx]
5
1 2 4 5 3
1 2 3 4 5
3 4
样例解释:
数据范围:
对于20%的数据n<=10
对于40%的数据n<=100
对于60%的数据n<=2000
对于80%的数据n<=1000,000
对于100%的数据n<=10,000,000
数据保证存在一棵合法的树同时满足dfs序和bfs序。
对于树中任意的三个节点a,b,fa,如果a,b都是fa的儿子,则a,b在bfs序中和dfs序中的相对前后位置是一致的。
您可能需要[快读代码]:
int read() { char ch=getchar(); while(ch<'0'||ch>'9')ch=getchar(); int x=0; while(ch>='0'&&ch<='9')x=x*10+ch-48,ch=getchar(); return x; }
您可能需要[开栈代码]:
int __size__=32<<20; char *__p__=(char*)malloc(__size__)+__size__; __asm__("movl %0, %%esp\n"::"r"(__p__));
一只名字很长的蒟蒻。