"""
#editorialより
頂点1から頂点iへの最短路の長さをdiとするとd1≦d2≦....≦dN
各iに対して頂点i+ 1から頂点iに長さ0の辺を追加
このときi回目に追加される辺について考えると、
頂点Liから頂点Riへの長さCiの辺を追加すれば十分
"""

import heapq
n,m = map(int,input().split( ))
Ad = [[] for _ in range(n)]
for i in range(m):
    li,ri,ci = map(int, input().split( ))
    Ad[li-1].append((ri-1,ci))
for i in range(1,n):
    Ad[i].append((i-1,0))

inf = 10**10
D = [inf for _ in range(n)]
#Prev = [-1 for _ in range(n)]
D[0] = 0
Q = []
heapq.heappush(Q, [0,0])

while Q:
    d,q = Q.pop() #qは[距離、頂点番号]：キューの優先度の都合で番号が後
    #print(q)
    for v,c in Ad[q]:#nは[辺の終点、辺の長さ]
        if D[v]>d+c:
            D[v] = d+c
            #Prev[n[0]] = q[1]
            heapq.heappush(Q, [D[v],v])

if D[n-1]<inf:
    print(D[n-1])
else:
    print(-1)

