#include <any>
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int l, m;
cin >> l >> m;
vector<pair<int, int>> v(m);
for (int i = 0; i < m; ++i) {
cin >> v[i].first >> v[i].second;
}
sort(v.begin(), v.end());
vector<pair<int, int>> tmp;
for (const auto& kv : v) {
if (tmp.empty() || tmp.back().second < kv.first - 1) {
tmp.push_back(kv);
} else {
tmp.back().second = max(tmp.back().second, kv.second);
}
}
int ret = l + 1;
for (const auto& kv : tmp) {
ret -= (kv.second - kv.first + 1);
}
cout << ret << endl;
}