华为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;
    }
}
相关推荐
Pocker_Spades_A4 分钟前
飞算JavaAI:开启 Java 开发 “人机协作” 新纪元
java·开发语言·飞算javaai
天天摸鱼的java工程师6 分钟前
MySQL 动态查询条件导致索引失效如何优化?
java·后端·面试
天天摸鱼的java工程师7 分钟前
MySQL 深分页如何进行性能优化?
java·后端·面试
码里看花‌9 分钟前
基于 Redis 实现高并发滑动窗口限流:Java实战与深度解析
java·开发语言·redis
Seven9713 分钟前
垃圾回收算法有哪些?了解哪些垃圾回收器?
java
EmpressBoost17 分钟前
System.getenv()拿不到你配置的环境变量
java·ide·intellij-idea
cui_hao_nan25 分钟前
JAVA并发——synchronized的实现原理
java·开发语言
程序员JerrySUN26 分钟前
一文理解缓存的本质:分层架构、原理对比与实战精粹
java·linux·开发语言·数据库·redis·缓存·架构
都叫我大帅哥1 小时前
MySQL慢查询定位与执行计划分析:从踩坑到起飞
java·mysql
wáng bēn1 小时前
[Java 17] 无模版动态生成 PDF:图片嵌入与动态表格渲染实战
java·pdf