#include using namespace std; #define rep(i,a,b) for(int i=(a);i<(b);i++) #define repr(i,a,b) for(int i=(a); i>=(b); i--) #define all(x) (x).begin(),(x),end() typedef long long ll; int N,M; int score[20][20];//score[i][j]:品物iが品物jより前にあれば、score[i][j]が得られる //bitDP //N<=14より部分集合全列挙? //dp[i]:集合iの要素の品物を並び替えたときに得られる得点の最大値 //O(2^N*N)でまわせる int dp[(1<<14)]; int main(){ cin>>N>>M; rep(i,0,M){ int a,b,c; cin>>a>>b>>c; score[a][b]=c; } //dp初期条件dp[1<