题解 P3740 【[HAOI2014]贴海报】
数据水的一逼啊。。。。
直接暴力就能过吧
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
using namespace std;
const int MAXN=10000001;
int n,m,x,y;
int read(int & n)
{
char c='/';int x=0,flag=0;
while(c<'0'||c>'9')
{c=getchar();
if(c=='-')flag=1;}
while(c>='0'&&c<='9')
{x=x*10+c-48;c=getchar();}
if(flag)n=-x;
else n=x;
return n;
}
int a[MAXN];
int vis[MAXN];
int now=1;
int ans=0;
int main()
{
//freopen("a.in","r",stdin);
//freopen("b.out","w",stdout);
read(n);read(m);
for(int i=1;i<=m;i++)
{
read(x);read(y);
if(x>y)swap(x,y);
for(int j=x;j<=y;j++)
a[j]=i;
}
for(int i=1;i<=n;i++)
{
if(vis[a[i]]==0&&a[i]!=0)
{
ans++;
vis[a[i]]=1;
}
}
printf("%d",ans);
return 0;
}