题目:
给出序列A,长度n<100000,m个子区间,m<100000,求每个子区间中没出现的最小整数的最大值。
题解:
动脑子想想会发现答案就是区间的最小长度。
证明:
1.每一个区间的mex值不可能大于其区间长度。
2.每一个区间的mex值都一定可以达到其区间长度。
循环打印数值即可。
#include
#include
#include
using namespace std;const int INF=1e9+1;
int n,m;
int ans[101000];struct S{int a,b;
}s[101000];int main(){cin>>n>>m;int minn=INF;for(int i=0;i>s[i].a>>s[i].b;minn=min(minn,s[i].b-s[i].a+1);}memset(ans,0,sizeof(ans));int cnt=0;for(int i=0;i