15 人解决,40 人已尝试。
17 份提交通过,共有 178 份提交。
7.0 EMB 奖励。
单点时限: 2.0 sec
内存限制: 256 MB
有一座很高很高的摩天大楼,它的最底层为 1,最高层为 100000。虽然里面居住了很多人,但是只有一部电梯,所以电梯异常繁忙。现在同时有 n 个人在等候电梯,电梯开关门和上下楼都需要一定的时间,最初电梯在一楼,并且最后电梯仍然要停在一楼,请你用程序算出这部电梯从一楼出发,把所有人都送到目的地后,又回到一楼的的最短时间。
第一行一个数 N(1<=N<=10), 表示测试数据的组数,对于每组测试数据 :
开始有三个数,分别为有 n 个人 (0<=n<=100000),电梯开关门时间 opentime(0<opentime<500),电梯上一层楼或者下一层所需要的时间 runtime(0<runtime<500);
接下来 n 行,每行两个数。分别表示第 i 个人现在所在的楼层和将去的楼层 (数据保证所在楼层和所去楼层不会是同一层)
对于每组测试数据输出一个数,表示电梯重回一楼所需的最少时间。
1 5 5 1 1 2 2 1 1 3 3 1 2 3
24
15 人解决,40 人已尝试。
17 份提交通过,共有 178 份提交。
7.0 EMB 奖励。