AT_wupc2019_f.RPG

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

卡托正在制作某个RPG的剧本。这个RPG有N个场面,各场面已经决定是“战斗”还是“空地”。另外,有连接M个场景之间的移动通道,第i个通道可以从场景ai移动到场景bi。最初,作为RPG的主人公的辛亚,在场面1中,自由地在通道上移动,到达场面N后游戏就完成了。
辛亚有“精神”和“疲劳”两种状态。在“精神”状态下可以战斗,但在“疲劳”状态下不能战斗。在“疲劳”状态下去“战斗”场面的话,游戏就结束了。
辛亚以“精神”状态开始游戏。当你通过“战斗”场面时,你会累得处于“疲劳”状态。为了从“疲劳”状态回到“精神”状态,需要通过“恢复所”。
“恢复所”可以设置在任何“空地”场景中。在场景\\(2\leqi\leq N-1)\中设置恢复点的成本是ci。
现在,还没有决定在哪里设置“恢复所”。因此,卡托决定设置“恢复所”,以满足以下条件。

  • 无论从场面\(1\)开始行动的辛雅选择了怎样的移动,从任意的“战斗”场面到达其他的“战斗”场面之间,至少有一次通过“恢复所”。
  • 游戏通关时的辛亚的状态可以是“疲劳”也可以是“精神”。

为了满足以上条件,请求出卡托设置“恢复所”时所需成本合计的最小值。如果如何设置“恢复站”都不能满足条件,请输出-1。

输入格式

输入以以下形式由标准输入给出。
N M
c2 c3 dots c{N-1}
a_1 b_1
a_2 b_2
vdots
a_M b_M

输出格式

请输出符合条件的“恢复站”安装成本合计的最小值。如果无法满足条件,请输出-1。

输入输出样例

  • 输入#1

    7 7
    -1 100 10 1 -1
    1 2
    2 3
    3 6
    2 4
    4 5
    5 6
    6 7

    输出#1

    101
  • 输入#2

    4 3
    -1 -1
    1 2
    2 3
    3 4

    输出#2

    -1

说明/提示

·(3 \leq N \leq 500)
·(N-1 \leq M \leq 1000)
·(-1 \leq c_i \leq 10^9 \ (2 \leq i \leq N-1))
·\(c_i=-1\)那么,场面\(i\)就是“战斗”场面。
·\(c_i\geq0\)那么,场景\(i\)是“空地”场景,在那里设置“休息处”的成本是\(c_i\)。
·(1 \leq a_i , b_i \leq N \ (1 \leq i \leq M))
·表示存在从场景ai到场景bi的移动通路。
·N当视为顶点M边的有向曲线时,所有顶点都存在来自顶点1的路径和朝向顶点N的路径。另外,不存在闭路。
·输入的值都是整数。

样例解释1

最适合选择场景3和场景5。

样例解释2

无法在场景2到场景3之间设置“恢复站”。

输入解题思路,AI测评打分。不知道怎么写?

首页