记录编号 423830 评测结果 AAAAAAAAAA
题目名称 Color the Axis 最终得分 100
用户昵称 Gravatarrewine 是否通过 通过
代码语言 C++ 运行时间 1.194 s
提交时间 2017-07-12 16:32:44 内存使用 10.79 MiB
显示代码纯文本
#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm> 
#include <cmath>
 
using namespace std;
 
typedef long long LL;
 
void read(int &x) {
    char c; bool flag = 0;
    while((c=getchar())<'0'||c>'9') flag |= (c=='-');
    x=c-'0';while((c=getchar())>='0'&&c<='9') x=x*10+c-'0';
    if(flag) x = -x;
}
 
#define N 200000
#define L (o<<1)
#define R (o<<1|1)
#define mid ((l+r)>>1)
#define Lch l,mid,o<<1
#define Rch mid+1,r,o<<1|1
int x,y,val;
 
struct E {int len,lazy;}t[N*5];

void Modify(int l,int r,int o) {
	if(x > r || y < l || t[o].len==r-l+1) return;
	if(x <= l && r <= y) {
		t[o].len = r-l+1;
		return;
	}
	Modify(Lch); Modify(Rch);
	t[o].len = t[L].len+t[R].len;
}
 
int n,m;
 
int main() {
	freopen("axis.in","r",stdin);freopen("axis.out","w",stdout);
	read(n); read(m);
    for (int i = 1; i <= m; i++) {
        read(x); read(y); 
    	Modify(1,n,1);
    	printf("%d\n",n-t[1].len);
	}
    return 0;
}