有大神教下这段代码哪里有误嘛,提交只有两个AC
查看原帖
有大神教下这段代码哪里有误嘛,提交只有两个AC
686779
povej楼主2022/3/1 00:34
#include<stdio.h>
#include<math.h>
int main(){
    int l,m;
    scanf("%d %d",&l,&m);
    int a[m][2];
    for(int j = 0;j<m;j++){
        scanf("%d %d",&a[j][0],&a[j][1]);
    }
    int temp = a[0][1]-a[0][0]+1;
    int a1 = a[0][0];
    int a2 = a[0][1];
    for(int k=1;k<m;k++){
        if(a1>=a[k][0]&&a1<=a[k][1]){
            temp+=(a1-a[k][0]);
            a1 = a[k][0];
        }
        else if(a[k][1]<a1){
            temp+=(a[k][1]-a[k][0])+1;
            a1 = a[k][0];
        }
        if(a2<=a[k][1]&&a2>=a[k][0]){
            temp+=(a[k][1]-a2);
            a2 = a[k][1];
        }
        else if(a2<a[k][0]){
            temp+=(a[k][1]-a[k][0])+1;
            a2 = a[k][1];
        }
    }
    printf("%d",(l+1-temp));
    return 0;
}
2022/3/1 00:34
加载中...