题目名称 | 2417. [HZOI 2016]在路上 |
---|---|
输入输出 | atr.in/out |
难度等级 | ★★☆ |
时间限制 | 10000 ms (10 s) |
内存限制 | 512 MiB |
测试数据 | 10 |
题目来源 | Hzoi_ 于2016-08-05加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:124, 提交:466, 通过率:26.61% | ||||
_Itachi | 100 | 0.029 s | 164.40 MiB | C++ |
Go灬Fire | 100 | 0.122 s | 363.65 MiB | C++ |
派特三石 | 100 | 0.159 s | 361.58 MiB | C++ |
疯不觉 | 100 | 0.161 s | 361.58 MiB | C++ |
Hzoi_Go灬Fire | 100 | 0.176 s | 363.65 MiB | C++ |
_Itachi | 100 | 0.441 s | 91.88 MiB | C++ |
森林 | 100 | 1.361 s | 74.44 MiB | C++ |
天亮说晚安· | 100 | 1.575 s | 166.11 MiB | C++ |
gls1196 | 100 | 1.642 s | 195.32 MiB | C++ |
天亮说晚安· | 100 | 1.681 s | 184.56 MiB | C++ |
关于 在路上 的近10条评论(全部评论) | ||||
---|---|---|---|---|
| ||||
我不服,为什么Dijkstra这么慢
| ||||
zzhzz
| ||||
zzh
| ||||
zzh
Hzoi_Hugh
2017-05-17 15:35
6楼
| ||||
拒绝打表,从我做起!!!!!!
森林
2016-10-05 07:14
5楼
| ||||
第9个点9.0s 总时间9.1s /zj
安呐一条小咸鱼。
2016-08-05 19:10
4楼
| ||||
woc,考试的时候有一份老是W的代码和一份老是T的代码,思虑再三交了老是W的,然后20分
老是T的那份居然还能骗40分 QAQ我要从2147483647楼跳下去 | ||||
考试30分,加个标记数组就能50.。。。然而剩下5个点仍然爆栈。。。。
_Itachi
2016-08-05 17:29
2楼
| ||||
...
Hzoi_
2016-08-05 15:42
1楼
|
小F想从宿舍去机房。但是在去机房的路上他还需要顺便拜访其他地点,比如去图书馆借书,比如去食堂吃饭。经过这些地点的顺序不是随意的,比如小F不希望在去教室放完东西之后才去图书馆借书(因为他要把借到的书放到教室)。由于小F的时间比较紧,他希望在满足以上限制的同时,所走过的路长度最短。
学校是一个有n个点m条边的无向连通图,地点自1至n依次编号,道路亦然。没有从某个地点直接到它自己的道路,两个地点之间最多只有一条道路直接相连。每条道路都有一个固定长度。在中途,小F想要经过k(k<=n-2)个地点。宿舍编号为1,机房编号为n,而小F想要经过的K个地点编号依次为2,3,…,k+1。
对于样例来说,小F想要经过地点2,3,4,5,并且在2停留的时候在3之前,而在4,5停留的时候在3之后。那么最短的走路方案是1-2-4-3-4-5-8,总长度为19。注意小F为了从地点2到地点4可以路过地点3,但不在地点3停留。这样就不违反小F的要求了。并且由于小F想要走最短的路径,因此这个方案正是小F需要的。
第一行包含3个整数n(2<=n<=20000),m(1<=m<=200000),k(0<=k<=20),意义如上所述。以下m行,每行包含3个整数x,y,z,(1<=x,y<=n,0<z<=1000);
接下来一行,包含一个整数q,表示有q个限制条件(0<=q<n)。以下q行,每行两个整数f,l(1<=l,f<=n),表示在f停留的时候要在l之前。
只包含一行,包含一个整数,表示最短的走路距离。
8 15 4 1 2 3 1 3 4 1 4 4 1 6 2 1 7 3 2 3 6 2 4 2 2 5 2 3 4 3 3 6 3 3 8 6 4 5 2 4 8 6 5 7 4 5 8 6 3 2 3 3 4 3 5
19
没啥提示
HZOI 2016