#include <bits/stdc++.h>
#define ll long long
#define ALL(x) x.begin(),x.end()
#define MOD (1000000000+7)
using namespace std;
#define PI 3.14159265359

#define tMOD 998244353
 vector<ll> v[105000];
 ll ans = 10000000333;
 ll cost[105000][105000]={0};
   ll N,M;

 
  ll ser(ll pre,ll now,ll C,ll cou){

    if(cou>=N-1){
      return 0;
    }
    if(now==0){
      ans =min(ans,C);
      return 0;
    }
    

    for(ll i=0;i<v[now].size();i++){
      if(v[now][i]!=pre)
      ser(now,v[now][i],C+cost[now][v[now][i]],cou+1);
    }
    return 0;
  }



 
int main(){

  cin>>N>>M;
  for(ll i=0;i<N;i++){
    
  }
  ll tmp,tmp1,tmp2;
  for(ll i=0;i<M;i++){
    cin>>tmp>>tmp1>>tmp2;
    tmp--;
    tmp1--;
    for(ll i=tmp;i<=tmp1;i++){
      for(ll j=i;j<=tmp1;j++){
        if(cost[i][j]==0){
          if(i!=j){
        v[i].push_back(j);
        v[j].push_back(i);
          }
        }
        if(cost[i][j]==0||cost[i][j]>tmp2){
          cost[i][j]=tmp2;
          cost[j][i]=tmp2;
        }
      }
    }
  }



ser(-1,N-1,0,0);

if(ans ==10000000333){
  cout<<-1<<endl;
}
cout<<ans<<endl;


 


}
