#include <bits/stdc++.h> #include <iostream> #include <vector> #include <algorithm> #include <queue> #include <deque> #include <atcoder/all> using namespace std; #define reps(i, a, n) for (int i = (a); i < (int)(n); ++i) #define rep(i, n) reps(i, 0, n) #define ALL(x) x.begin(),x.end() #define SIZE(x) ll(x.size()) #define INF32 2147483647 //2.147483647×10^{9}:32bit整数のinf #define INF64 9223372036854775807 //9.223372036854775807×10^{18}:64bit整数のinf #define MOD 1000000007 //問題による #define F first #define S second #define ll long long #define coutALL(x) for(auto i=x.begin();i!=--x.end();i++)cout<<*i<<" ";cout<<*--x.end()<<endl; #define coutALL2d(vv) for(const auto& v : vv){for(const auto& e : v){cout << e << " ";}cout << endl;} #define vi vector<int> #define vvi vector<vector<int> > #define vll vector<long long> #define vvll vector<vector<long long> > using namespace std; int main(){ int n,m; cin >> n >> m; vector<pair<int,int>> v; vector<int> s(m); rep(i,m){ int x,y; cin >> x >> y; v.push_back({y,x}); s[i] = x; } sort(ALL(v)); int ls = v[0].F; int count = 1; for(int i = 1; i< m; i++){ if(ls <= v[i].S) { count++; ls = v[i].F; } } cout << 2*(n-1)-count << endl; }