hack也可以,但悬一关
#include<bits/stdc++.h>
using namespace std;
long long n,m,a[210000],b[210000],z[210000],y[210000],x,l,r;
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
cin>>n>>m;
for(long long i=1;i<=n;i++)
{
cin>>a[i]>>b[i];
a[i]-=1;
b[i]+=1;
}
x=1;
r=m;
for(long long i=1;i<=n;i++)
{
z[i]=z[i-1]+1;
if(x<=a[i])
{
r=min(r,a[i]);
}else
{
if(b[i]>n)
{
for(long long j=i;j<=n;j++)
{
z[j]=9e18;
}
break;
}
for(long long j=x+1;j<=b[i];j++)
{
x++;
if(x>r)
{
z[i]++;
}
}
}
}
x=m;
l=1;
for(long long i=1;i<=n;i++)
{
y[i]=y[i-1]+1;
if(x>=b[i])
{
l=max(l,b[i]);
}else
{
if(a[i]<1)
{
for(long long j=i;j<=n;j++)
{
y[j]=9e18;
}
break;
}
for(long long j=x-1;j>=a[i];j--)
{
x--;
if(x<l)
{
y[i]++;
}
}
}
}
for(long long i=1;i<=n;i++)
{
x=min(z[i],y[i]);
if(x==9e18)
{
cout<<-1<<endl;
}else
{
cout<<x<<endl;
}
}
return 0;
}