暴力就行,别想太多毕竟就是个1星
#include<iostream> using namespace std; int main() { int l, N,a[10001]={0},b,c,s=0; cin>>l>>N; for(int i=0;i<N;i++) { cin>>b>>c; for(int j=b;j<=c;j++) a[j]++; } for(int i=1;i<=l;i++) if(a[i]==0) s++; cout<<s<<endl; }把起点到终点所有的数标记,如区间0~8,标记0~8,a[0]++;从0开始遍历路段总长l,输出未被标记的数量。