#P1421. 滑雪(ski)
滑雪(ski)
【Description】
C市有一座滑雪场,该滑雪场内一共有N座山。
这N座山有各自的高度,第i座山高度用Hi表示。
N座山之间已经有M条滑雪道,每条滑雪道都有自己的距离。不过,从一座山只能滑雪到不高于自己的另一座山。换句话说,如果两座山高度不同,滑雪道是单向的;如果两座山的高度相同,那么滑雪道是双向的。
kAc站在1号山上。他手里有很多时间剂(可以视作无穷多)。时间剂的用处是回到你曾经所在的一座山。
他想知道,在时间剂的帮助下,他最多可以到达多少山。进一步的,在保证到达的山最多的前提下,他最少需要的滑雪距离是多少。
(使用时间剂不会增加滑雪距离)
【Input】
第一行两个正整数N, M
接下来N个正整数,表示Hi
接下来M行,每行三个正整数,分别表示这条滑雪道的两端以及长度
【Output】
两个正整数 表示你可以到达的山的数量,以及最少的滑雪距离
【Sample Input】
3 3
3 2 1
1 2 1
2 3 1
1 3 10
【Sample Output】
3 2
【Sample Input】
3 3
2 2 1
1 2 2
2 1 1
1 3 10
【Sample Output】
3 11
【Hint】
对于样例1:一种可行的方案是:初始在1,先到2,再到3 总距离2
对于样例2:一种可行的方案是:初始在1,通过第二条滑雪道到2,用时间剂回到1,再滑雪到3。请注意,当kAc在2的时候,滑雪到1也是可以的,但是这样会导致答案不优。
对于30%:N<=2000
对于100%:N, M<=1000000