华为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;
    }
}
相关推荐
camellias_6 小时前
【无标题】
java·tomcat
咸鱼2.06 小时前
【java入门到放弃】需要背诵
java·开发语言
椰猫子7 小时前
Java:异常(exception)
java·开发语言
win x8 小时前
Redis 使用~如何在Java中连接使用redis
java·数据库·redis
星晨雪海8 小时前
基于 @Resource 的支付 Service 多实现类完整示例
java·开发语言
阿维的博客日记8 小时前
什么是逃逸分析
java·juc
Mr_Xuhhh8 小时前
深入理解JVM:从原理到实践的完整指南
jvm
Ricky_Theseus8 小时前
C++右值引用
java·开发语言·c++
Rick19939 小时前
Java内存参数解析
java·开发语言·jvm
我是大猴子9 小时前
Spring代理类为何依赖注入失效?
java·后端·spring