p1047
查看原帖
p1047
1341320
CR13432818231楼主2025/2/7 19:17
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        int l, m, u, v;
        int a, b; //连续区间的端点
        int result = 0;

        Scanner sc = new Scanner(System.in);
        l = sc.nextInt();
        m = sc.nextInt();
        a = sc.nextInt();
        b = sc.nextInt();
        result = l + 1;  //总共的树
        
        for (int i = 2; i <= m; i++){
            u = sc.nextInt();
            v = sc.nextInt();
            //和上次比较是否可连续
            if (a <= u && v <= b){
                //在区间内
            } else if (u < a && (a <= v && v <= b)) {
                a = u;
            } else if ((a <= u && u <= b) && b < v) {
                b = v;
            }
            else {
                //不连续
                result = result - (b - a + 1);
                a = u;
                b = v;
            }
        }
        //再减去最后一次的区间
        result = result - (b - a + 1);
        System.out.println(result);
    }
}

哪里出问题了,只有30分

2025/2/7 19:17
加载中...