答案倒是出来的,可是貌似时间复杂度不对。。用很蠢的brute force做的。。
过会再改。。
#include<iostream>
#include<algorithm>
#include<cmath>
#include<vector>
using namespace std;
int main()
{
int time,start,end;
vector<int> wall(10000);
cin>>time;
while(time--)
{int num,N=0,j;
cin>>num;
for(int i=0;i<num;i++)
{
cin>>start>>end;
for( j=start;j<=end;j++)
{
wall[j]=i+1;
}
}
for(int i=0;i<num;i++)
{
vector<int>::iterator result=find(wall.begin(),wall.end(),(i+1));
if(result!=wall.end())
N++;
}
cout<<N<<endl;
}
}