def main(): import sys input = sys.stdin.read data = input().split() idx = 0 N = int(data[idx]) idx += 1 M = int(data[idx]) idx += 1 INF = 10**18 dist = [[INF] * (N + 1) for _ in range(N + 1)] for i in range(1, N + 1): dist[i][i] = 0 for _ in range(M): s = int(data[idx]) idx += 1 t = int(data[idx]) idx += 1 d = int(data[idx]) idx += 1 if d < dist[s][t]: dist[s][t] = d # Floyd-Warshall algorithm for k in range(1, N + 1): for i in range(1, N + 1): for j in range(1, N + 1): if dist[i][k] + dist[k][j] < dist[i][j]: dist[i][j] = dist[i][k] + dist[k][j] # Calculate sums for i in range(1, N + 1): total = 0 for j in range(1, N + 1): if i == j: continue if dist[i][j] < INF: total += dist[i][j] print(total) if __name__ == "__main__": main()