def narabe(N): if N == 2: result = [[0, 1], [1, 0]] return result result = [] bef_f = narabe(N - 1) for i in range(len(bef_f)): li1 = bef_f[i] for j in range(len(li1) + 1): li2 = [] + li1 li2.insert(j, N - 1) result.append(li2) return result def shinamono(N, M, scores): lists = narabe(N) score_list = [] for i in range(len(lists)): score = 0 li = lists[i] for j in range(M): a = li.index(scores[j][0]) b = li.index(scores[j][1]) if a < b: score += scores[j][2] score_list.append(score) result = max(score_list) return result def main(): N, M = map(int, input().split()) scores = [[0, 0, 0] for i in range(M)] for j in range(M): scores[j][0], scores[j][1], scores[j][2] = map(int, input().split()) print(shinamono(N, M, scores)) if __name__ == '__main__': main()