#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef pair PI; vector < list> adj(101); #define LL long long LL item[101][101]; bool memo[101]; void dfs(int v){ if (memo[v])return; if (adj[v].size() == 0u)item[v][v] = 1; for (auto& u : adj[v]){ dfs(u.first); for (int i = 0; i < 101; i++){ item[v][i] += item[u.first][i] * u.second; } } memo[v] = true; } int main(void){ int N, M, P; PI p; cin >> N >> M; while (M--){ cin >> p.first >> p.second >> P; adj[P].push_back(p); } dfs(N); for (int i = 1; i < N; i++){ cout << item[N][i]<