def chmin(DP,i,v): if DP[i] > v: DP[i] = v INF = 10**18 N, M = map(int, input().split()) dist = [[INF]*N for _ in range(N)] for i in range(M): a, b, t = map(int, input().split()) a -= 1 b -= 1 chmin(dist[a], b, t) for i in range(N): dist[i][i] = 0 for k in range(N): # 中継地点 for i in range(N): for j in range(N): if dist[i][k] != INF and dist[k][j] != INF: dist[i][j] = min(dist[i][j], dist[i][k] + dist[k][j]) for i in range(N): ans = 0 for j in range(N): if dist[i][j] != INF: ans += dist[i][j] print(ans)