约会时间
时间限制:1秒 内存限制:256M
【题目描述】
贝西和她的妹妹爱丽丝想要从谷仓旅行到他们最喜欢的地区去。
她们会在同一时间离开谷仓,也希望要在同一时间到达她们的目的地地区。农场由 \(N\) 个地区组成,分别编号为 \(1..N\),谷仓位于 1 号区域,而她们的目的地是 \(N\) 号区域。由于农场是依山而建的,两个区域之间会有高度差,编号小的地区海拔高于编号大的地区的海拔,即 1 号地区海拔最高,\(N\) 号地区海拔最低。会有 \(M\) 条小路两两连接不同地区。因为山路过于陡峭,路只允许以下坡的方式行走。比如就一条路连接了 5 号区域和 8 号区域,那么只允许从 5 号区域前往 8 号区域而不允许反向行走。每两个地区之间至多只有一条路,所以 \(M≤N(N-1)/2\)。
贝西和爱丽丝走路所花费的时间是不一样的。比如,走同一条路,贝西会需要 10 个单位时间,而爱丽丝会要 20 个。请注意,因为她们在赶时间,所以只会在路上花费时间,进入或者离开一个区域不需要花费时间,而且她们也不会停下来等对方。请帮忙计算出贝西和爱丽丝最短需要多少时间才能同时出发且同时到达她们的目的地。
【输入格式】
第一行包含两个以空格分隔的整数,分别为 \(N\) 和 \(M\)。
接下来 \(M\) 行描述连接区域之间的路的情况每一行给出四个以空格分隔的整数 \(A\ B\ C\ D\),表示 \(A\) 区域和 \(B\) 区域之间有一条路,贝西需要 \(C\) 个单位时间来走完这条路,而爱丽丝需要 \(D\) 个单位时间来走。\(C\) 和 \(D\) 都在区间 \(1..100\) 内。
【输出格式】
输出一个整数。即贝西和爱丽丝同时出发且同时达到N号区域所需要的最少时间。如果无法到达 \(N\) 号区域或者不可能同时到达,请输出单词 "IMPOSSIBLE"(引号不用输出)。
【输入输出样例】
Input
3 3
1 3 1 2
1 2 1 2
2 3 1 2
Output
2
【数据限制】
对于 \(100\%\) 的数据,\(1≤N≤100\)。
【来源】
Mr.he