#include using namespace std; #define int long long typedef pair P; int INF = 3e18+7; int mod = 1e9+7; int dx[] = {1, 0,-1, 0, 1, 1,-1,-1}; int dy[] = {0, 1, 0,-1, 1,-1, 1,-1}; signed main() { int N,M; cin >> N >> M; vectors(M),t(M),d(M); for(int i = 0; i < M; i++) { cin >> s[i] >> t[i] >> d[i]; s[i]--;t[i]--; } for(int i = 0; i < N; i++) { vectordist(N,INF); dist[i] = 0; for(int l = 0; l < N-1; l++) { for(int i = 0; i < M; i++) { if(dist[s[i]] == INF) { continue; } if(dist[t[i]] > dist[s[i]]+d[i]) { dist[t[i]] = dist[s[i]]+d[i]; } } } int ans = 0; for(int j = 0; j < N; j++) { if(dist[j] == INF) { continue; } ans += dist[j]; } cout << ans << endl; } }