工作

测试数据来自 system/2868

作业已超过截止时间,您无法递交本题目。

时间限制:1秒  内存限制:256M


【问题描述】

  有 \(N\) 项工作,编号为 \(1..N\),完成第 \(i\) 项工作需要 \(T_i\) 个单位时间。有些工作需要在另一些工作完成之后才可以开始。当然没有先后顺序要求的工作,就可以同时进行。请你帮忙计算最短多少时间就可以做完所有工作。

【输入格式】

  第一行为整数 \(N\) 和 \(M\),分别表示有 \(N\) 项工作和M对先后顺序的工作。
  接下来的 \(N\) 行,每行一个整数,其中第 \(i+1\) 行的整数表示 \(T_i\)。
  再接下来的 \(M\) 行,每行包含两个整数 \(A\) 和 \(B\),表示工作 \(B\) 必须在 \(A\) 完成之后才可以开始。

【输出格式】

  一个整数,表示最短时间。

【输入输出样例】

 Input

3 1 
10 
5 
6 
3 2 

 Output

11

【数据范围】

  对于 100% 的数据满足\(1 ≤ N ≤ 10,000\),\(1 ≤ M ≤ 50,000\),\(1 ≤ T_i ≤ 100,000\)。

【来源】

  Mr.he

DAG图与拓扑排序练习题

未认领
状态
已结束
题目
10
开始时间
2024-04-26 00:00
截止时间
2024-07-06 23:59
可延期
24.0 小时