#include <bits/stdc++.h> using namespace std; int main(){ int L, M; cin>>L>>M; // 使用布林陣列標記被移除的位置 vector<bool> removed(L+1,false); // 處理每個區域 for(int i=0;i<M;i++){ int start,end; cin>>start>>end; // 確保start<=end if(start>end) swap(start,end); // 標記這個區域內的所有樹為被移除 for(int j=start;j<=end;j++){ removed[j]=true; } } // 計算剩餘的樹 int remaining=0; for(int i=0;i<=L;i++){ if(!removed[i]){ remaining++; } } cout<<remaining<<endl; return 0; }