#939. 小G的⚪石

小G的⚪石

题目描述

''向着星辰与…''

''感谢您完成了…''

''向着星辰与…''


小G的肝病又犯了,今天他不想肝太多任务,他只想肝完一系列任务,在该一系列任务中,每个任务点都对应着相应的⚪石。由于卡池将要结束,小G只好肝完总⚪石最多的一串任务。小G在网上搜了许多攻略,由于每个攻略提供的信息过于冗杂,他只好将每个任务 (ii 为任务编号) 可获得的⚪石数量 aia_i 和每个任务之间关系都记录下来。

现在告诉你每个任务的⚪石数量并且每个任务之间的关系,请找出可获得的最大⚪石数量和起始任务点编号。(题目保证最大⚪石数量是唯一的)

输入格式

第一行,输入两个整数 nnmm ,表示有 nn 个任务,任务之间有 mm 个关系。(1n,m105)(1\leq n,m \leq 10^5)

第二行,输入 nn 个整数,aia_i 表示编号为 ii 的任务可获得的⚪石。(1ai109)(1 \leq a_i\leq10^9)

接下来的 mm 行,每行输入两个整数 uuvv,表示 uuvv 的前置任务。(1u<vn)(1 \leq u <v\leq n)

输出格式

第一行,输出一个整数表示可获得的最大⚪石数量。

第二行,输出一行递增序列,表示起始任务点编号。行末没有空格。

10 6
20 40 60 40 30 20 15 75 25 10
2 4
5 7
3 4
7 9
8 9
2 3
145
5 8

样例解释:

image.png

由上图可知,总共有 5 个任务点集合,其中以 5 和 8 作为起始任务点可获得⚪石数量最多。