28求助
查看原帖
28求助
834133
CKA_Is_Cute楼主2024/6/29 08:37
#include <bits/stdc++.h>
using namespace std;
int a[1505][1505];
int n, m;
long long vis[1505];
int main() {
	cin >> n >> m;
	for (int i = 1; i <= m; i++) {
		int u, v, w;
		cin >> u >> v >> w;
		a[u][v] = w;
	}
	vis[n] = 0;
	for (int i = n - 1; i >= 1; i--) {
		vis[i] = -1;
		for (int j = i + 1; j <= n; j++) {
			if (a[i][j] and (vis[j] or j == n)) {
				vis[i] = max(vis[i], vis[j] + a[i][j]);
			}
		}
	}
	cout << vis[1];
	return 0;
}

wa的点:1,2,4,5,6,7,8,9wa的点:1,2,4,5,6,7,8,9

请各位大佬指教本蒟蒻

2024/6/29 08:37
加载中...