#P1633. 【最短路】圣诞树(已添加数据)
【最短路】圣诞树(已添加数据)
Description
【题目描述】圣诞节到了,FireDancer准备做一棵大圣诞树。左图为圣诞树的一个简单结构。
这棵树被表示成一组被编号的结点和一些边的集合。结点从1到n编号。树的根永远是1。每个结点都有一个自身特有的数值,称为它的重。各个结点的重可能不同。对于一棵做完的树来说,每条边都有一个价值,若设这条边e连接结点i和结点j,且i为j的父结点(根是最老的祖先),则该边的价值为(j的所有子孙及它自己的重之和)*(e的单位价值ce)。
现在FireDancer想造一棵树,使得树上所有边的总价值最小,并且所有的点都在树上,因为FireDancer喜欢大树。

【输入格式】
第一行两个整数n和m(0 < = n,m < = 50000),表示结点总数和可供选择的边数。
下面一行有n个整数,依次表示每个结点的重。
下面m行,每行有3个正整数a,b,c,表示结点a和结点b之间有一个单位价值为c的边可供你造树时选择。
输入中的所有数都小于2^16。
【输出格式】
若无解,输出“No Answer”,否则一个整数表示造树的最小价值。
【样例1输入】
2 1
1 1
1 2 15
【输出1样例】
15
【样例2输入】
7 7
200 10 20 30 40 50 60
1 2 1
2 3 3
2 4 2
3 5 4
3 7 2
3 6 3
1 5 9
【输出2样例】
1210