你怎么能对a数组直接排序呢?
by iwprc @ 2018-11-02 23:45:32
@[救いの翼](/space/show?uid=41942)
by iwprc @ 2018-11-02 23:45:58
```
#include<algorithm>
#include<iostream>
#include<cstdio>
using namespace std;
inline long long read()
{
long long k=0,f=1;char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
while(ch>='0'&&ch<='9'){k=k*10+ch-'0';ch=getchar();}
return k*f;
}
inline void write(long long x)
{
if(x<0)x=-x,putchar('-');
if(x>9)write(x/10);putchar(x%10+'0');
}
struct node
{
int l,r;
}a[100001];
bool cmp(node x,node y)
{
return x.l<y.l;
}
int main()
{
long long n,i,ll,rr,m=0;
n=read();
for(i=1;i<=n;i++)
a[i].l=read(),a[i].r=read();
sort(a+1,a+n+1,cmp);
ll=a[1].l;rr=a[1].r;
for(i=2;i<=n;i++)
{
if(a[i].l>rr)
{
m+=rr-ll+1;
ll=a[i].l;
rr=a[i].r;
}
else
if(a[i].r>rr)
rr=a[i].r;
}
write(m+rr-ll+1);
return 0;
}
```
by 救いの翼 @ 2018-11-02 23:51:30
@[U41485](/space/show?uid=41485)
但这个能过
by 救いの翼 @ 2018-11-02 23:51:47
对呀
by iwprc @ 2018-11-02 23:53:46