1.本地测试用例没有问题,但提交结果是‘错误’,分数:0,不知道哪里错了
2.代码如下:
#include<stdio.h>
#include<math.h>
int max(int x,int y) {
return x>y?x:y;
}
int min(int x,int y) {
return x>y?y:x;
}
int main()
{
int n,i,j,k,temp,rr,ll;
int sum;
char t;
int a[2000][2];
int b[2000][2];
scanf("%d",&n);
for(i=0;i<n;i++)
{
k=0;
while(k<2){
scanf("%d",&t);
a[i][k++]=t;
}
}
for(i=0;i<n;i++)
{
k=0;
while(k<2){
scanf("%d",&t);
b[i][k++]=t;
}
}
i=0;
j=0;
a[n][0]=1111111;
a[n][1]=1111111;
b[n][0]=1111111;
b[n][1]=1111111;
while(i<n||j<n){
if(a[i][0]>=b[j][1]||b[j][0]>=a[i][1]);
else {
rr=min(a[i][1],b[j][1]);
ll=max(a[i][0],b[j][0]);
sum=sum+rr-ll;
}
if(a[i][1]<b[j][1])
{
if(i+1>n)i=n;
else i++;
}
else {
if(j+1>n)j=n;
else j++;
}
}
printf("%d\n",sum);
return 0;
}