比赛 20110318 评测结果 AWWWWWWWWW
题目名称 工程规划 最终得分 10
用户昵称 王者自由 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2011-03-18 21:30:03
显示代码纯文本
#include <cstdio>
#define MAXN 5001
int n, m, l, k;
int I[MAXN], J[MAXN], B[MAXN], T[MAXN];
int main() {
	freopen("work.in","r",stdin);
	freopen("work.out","w",stdout);
	scanf("%d %d", &n, &m);
	l = 0;
	for(int i=1; i<=m; i++) {
		scanf("%d %d %d", &I[i], &J[i], &B[i]);
		l += B[i];
	}
	if(l<0) {
		printf("NO SOLUTION\n");
		return 0;
	}
	l = 0;
	for(int i=1; i<=m; i++) {
		if(T[I[i]] == B[i] + T[J[i]])
			l++;
		else {
			T[I[i]] = B[i] + T[J[i]];
			l++;
		}
		if(l>n)
			break;
	}
	l = (1<<30)-1;
	for(int i=1; i<=n; i++)
		if(T[i]<l)
			l = T[i];
	for(int i=1; i<=n; i++)
		printf("%d\n", T[i]-l);
	return 0;
}