P7082 [NWRRC 2013] Dwarf Tower

题目描述

小 Vasya 在玩一个新游戏叫做 Dwarf Tower。在这个游戏中有 $n$ 个不同的衣物给你的矮人。衣物从 $1$ 到 $n$ 进行编号。Vasya 想要获得编号为 $1$ 的衣物。 现在有两种方法获得一件衣物: 1. 你可以买它,第 $i$ 件物品花费 $c_i$ 元。 1. 你还可以制作它,这个游戏支持 $m$ 种制作方法。要制作一个衣物,你需要花费两个特定的衣物。 算出 Vasya 至少需要多少钱来获得一号衣物。

输入格式

第一行输入两个整数 $n$ , $m$ $(1 \le n \le 10000 , 0 \le m \le 100000) $ 代表有 $n$ 种衣物和有 $m$ 种制作方法。 第二行输入 $n$ 个整数,第 $i$ 个整数代表 $c_i$ $(0 \le c_i \le 10^9)$ 。 接下来 $m$ 行每行有三个整数 $a_i, x_i, y_i$ $(1 \le a_i, x_i, y_i \le n , a_i \ne x_i, x_i \ne y_i, y_i \ne a_i)$ ,$a_i$ 代表 $a_i$ 可以被 $x_i$ 和 $y_i$ 制作。

输出格式

一个整数,代表 Vasya 至少需要多少钱来获得一号衣物。

说明/提示

Time limit: 2 s, Memory limit: 256 MB.