Problem6501--最长路

6501: 最长路

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

设 $G$ 为有 $n$ 个顶点的带权有向无环图,$G$ 中各顶点的编号为 $1$ 到 $n$。
请设计算法,计算图 $G$ 中 $1$ 到 $n$ 间的最长路径。

Input

输入的第一行有两个整数,分别代表图的点数 $n$ 和边数 $m$。
第 $2$ 到第 $(m + 1)$ 行,每行 $3$ 个整数 $u, v, w\ (u<v)$,代表存在一条从 $u$ 到 $v$ 边权为 $w$ 的边。

Output

输出一行一个整数,代表 $1$ 到 $n$ 的最长路。
若 $1$ 与 $n$ 不连通,请输出 $-1$。

Constraints

对于 $20\%$ 的数据,$n \leq 100,\ m \leq 10^3$。
对于 $40\%$ 的数据,$n \leq 10^3,\ m \leq 10^{4}$。
对于 $100\%$ 的数据,$1 \leq n \leq 1500,\ 1 \leq m \leq 5 \times 10^4,\ 1 \leq u, v \leq n,\ -10^5 \leq w \leq 10^5$。

Sample 1 Input

2 1
1 2 1

Sample 1 Output

1

HINT

题目来源:洛谷 P1807

Source/Category