#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;
}