题目描述
小A有N头奶牛,每头奶牛有个挤奶的时间;且某两头奶牛有挤奶顺序,即:xy,则只有在奶牛x挤完奶时,才能挤奶牛y。现在给定N头奶牛的挤奶时间,及M对先后关系,求N头奶牛都挤完奶的最早时间。
输入
第一行为两个空格隔开的整数N和M。
以下N行,第i+1行表示第i头奶牛的挤奶时间T_i;
以下M行,每行两个整数x,y,表示奶牛x在奶牛y之前挤奶。保证关系无环,即保证有解。
输出
输出共一行一个整数Ret,N头奶牛都挤完奶的最早时间。
样例输入
3 1
10
5
6
3 2
样例输出
11
提示
【样例解释】
先挤奶牛1和3,第6秒时,奶牛3挤完了;接着挤奶牛1和2,第10秒时,奶牛1挤完了,第11秒时,奶牛2也挤完了。
【数据规模】
对于30%的数据:1≤N≤100;1≤M≤50;
对于100%的数据:1≤N≤10,000;1≤M≤50,000;1≤T_i≤100,000;
Code:
#include <iostream>
#include <vector>
#include <queue>
#defi