华为OD机考-观看文艺汇演问题-区间问题(JAVA 2025B卷)


java 复制代码
import java.util.*;
/**
 * @version Ver 1.0
 * @date 2025/6/20
 * @description 观看文艺汇演
 */
public class WatchMovie {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int num = Integer.parseInt(sc.nextLine());
        List<Movie> movies = new ArrayList<>(num);
        for (int i = 0; i < num; i++) {
            int[] array = Arrays.stream(sc.nextLine().split("\\s+")).mapToInt(Integer::parseInt).toArray();
            movies.add(new Movie(array[0],array[1]));
        }
        // 按照结束时间 升序排序
        movies.sort((m1,m2)->{
            return m1.getEndTime() - m2.getEndTime();
        });
        solve(movies);
    }

    private static void solve(List<Movie> movies) {
        //720 120
        //840 120
        //0 60
        //90 60
        int count = 0;
        int tempTime = 0;//记录上一场演出的结束时间+去下一场演出花费的时间
        for (int i = 0; i < movies.size(); i++) {
            Movie current = movies.get(i);
            if(current.getStartTime() >= tempTime){//下一场演出开始时间>=tempTime,才能看演出
                tempTime = current.getEndTime()+15;
                count++;
            }
        }
        System.out.println(count);
    }
}

class Movie{
    private Integer startTime;
    private Integer endTime;

    public Movie() {
    }

    public Integer getStartTime() {
        return startTime;
    }

    public void setStartTime(Integer startTime) {
        this.startTime = startTime;
    }

    public Integer getEndTime() {
        return endTime;
    }

    public void setEndTime(Integer endTime) {
        this.endTime = endTime;
    }

    public Movie(Integer startTime, Integer dual) {
        this.startTime = startTime;
        this.endTime = startTime + dual;
    }
}
相关推荐
從南走到北35 分钟前
JAVA国际版东郊到家同城按摩服务美容美发私教到店服务系统源码支持Android+IOS+H5
android·java·开发语言·ios·微信·微信小程序·小程序
qianmoq1 小时前
第04章:数字流专题:IntStream让数学计算更简单
java
带只拖鞋去流浪2 小时前
Java集合(Collection、Map、转换)
java
超级小忍2 小时前
使用 GraalVM Native Image 将 Spring Boot 应用编译为跨平台原生镜像:完整指南
java·spring boot·后端
野犬寒鸦2 小时前
力扣hot100:搜索二维矩阵与在排序数组中查找元素的第一个和最后一个位置(74,34)
java·数据结构·算法·leetcode·list
cxyxiaokui0013 小时前
线程池的“变形记”:核心线程数居然能随时变大变小?
java·面试
灵魂猎手3 小时前
11. Mybatis SQL解析源码分析
java·后端·源码
努力的小郑3 小时前
别再说你会 new Object() 了!JVM 类加载的真相,绝对和你想的不一样
java·jvm·面试
cxyxiaokui0014 小时前
论如何优雅地让AI“闭嘴”:深入SpringAI的流式停止与记忆难题
java·后端
嗝屁小孩纸4 小时前
使用EasyExcel自定义导出表格
java·excel