题目名称 535. 工程规划
输入输出 work.in/out
难度等级 ★★
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 9
题目来源 Gravatarcqw 于2011-03-18加入
开放分组 全部用户
提交状态
分类标签
差分约束
分享题解
通过:36, 提交:126, 通过率:28.57%
GravatarJSX 100 0.000 s 0.00 MiB C++
Gravatarztx 100 0.000 s 0.00 MiB C++
Gravatarztx 100 0.000 s 0.00 MiB C++
Gravatarztx 100 0.000 s 0.00 MiB C++
Gravatarztx 100 0.000 s 0.00 MiB C++
Gravatarztx 100 0.000 s 0.00 MiB C++
GravatarSt.Burning\ 100 0.000 s 0.00 MiB C++
GravatarSt.Burning\ 100 0.000 s 0.00 MiB C++
GravatarSt.Burning\ 100 0.000 s 0.00 MiB C++
GravatarSt.Burning\ 100 0.000 s 0.00 MiB C++
本题关联比赛
20110318
20110318
关于 工程规划 的近10条评论(全部评论)
坑爹呀,spfa跑出来的也是正解呀,因为木有spcial jugle所以过不了
Gravatarmikumikumi
2015-04-23 22:12 11楼
请将 inf 设定为 100000 我猜做数据时就是按这个做的
刚刚接触差分约束问题的孩子伤不起啊
Gravatarztx
2014-09-21 15:34 10楼
这个没有Special Judge吗?第4个点简直是。。。显然是不对的
GravatarHouJikan
2014-09-13 09:59 9楼
不能乱装B啊。。。赋初值最好别写for循环里。。。。
GravatarFF_Sky||幻
2014-05-12 15:41 8楼
出题人真懒- -
题意不明数据弱,此题不可做...
GravatarFF_Sky||幻
2014-05-12 15:17 7楼
VIP是不是要有spj啊????为毛最短路不行,只能最长路
GravatarOI永别
2014-04-24 17:24 6楼
求解 关于用SPFA 和bellman ford...虽然都是求最短路但是前者貌似在这个题不行?.. 求解初始化
懂了..初始的时候 d[1]=0然后其他设为inf 然后全部入队就OK
Gravatar馒头
2013-10-16 11:45 5楼
GravatarEzoi_XY
2013-06-27 21:35 4楼
这题貌似需要评测插件。。。坑了我好久
GravatarQhelDIV
2013-03-27 17:01 3楼
居然因初始化调了很久。。。
GravatarDavidMason
2013-02-28 17:16 2楼

535. 工程规划

★★   输入文件:work.in   输出文件:work.out   评测插件
时间限制:1 s   内存限制:128 MiB

【问题描述】

造一幢大楼是一项艰巨的工程,它是由 $n$ 个子任务构成的,给它们分别编号$1,2,\cdots, n(5\leq n\leq 1000)$。由于对一些任务的起始条件有着严格的限制,所以每个任务的起始时间 $T_1,T_2,\cdots,T_n$并不是很容易确定的(但这些起始时间都是非负整数,因为它们必须在整个工程开始后启动)。例如:挖掘完成后,紧接着就要打地基;但是混凝土浇筑完成后,却要等待一段时间再去掉模板。

这种要求就可以用$m(5\leq m\leq 5000)$个不等式表示,不等式形如$T_i- T_j\leq b$代表$i$和$j$的起始时间必须满足的条件。每个不等式的右边都是一个常数 $b$ ,这些常数可能不相同,但是它们都在区间$(-100,100)$ 内。

你的任务就是写一个程序,给定像上面那样的不等式,找出一种可能的起始时间序列$T_1,T_2,\cdots,T_n$,或者判断问题无解。对于有解的情况,要使最早进行的那个任务和整个工程的起始时间相同,也就是说,$T_1,T_2,\cdots,T_n$中至少有一个为 0 。

【输入格式】

第一行是用空格隔开的两个正整数$n$和$m$。

接下来 $m$ 行每行有三个用空格隔开的整数 $i,j,b$对应着不等式$T_i- T_j\leq b$。

【输出格式】

如果有可行的方案,那么输出$n$行,每行都有一个非负整数且至少有一个为$0$,按顺序表示每个任务的起始时间。

如果没有可行的方案,就输出信息“NO SOLUTION”。

【输入样例1】

5 8
1 2 0
1 5 -1
2 5 1
3 1 5
4 1 4
4 3 -1
5 3 -3
5 4 -3

【输出样例1】

0
0
5
4
1

【输入样例2】

5 5
1 2 -3
1 5 -1
2 5 -1
5 1 -5
4 1 4

【输出样例2】

NO SOLUTION