1624: 安排电视节目(PIPIPOJ)

1624: 安排电视节目(PIPIPOJ)

题目描述

PIPI在电视台工作,他今天要安排一些电视节目的播放顺序。

其中可能有一些电视节目在时间上是冲突的,因此PIPI需要放弃一些节目。

请问PIPI最少需要放弃多少个节目才能使得剩下的节目没有冲突。

每个电视节目有一个开始时间和一个结束时间,一个节目结束后可以立即播放下一个节目。

输入

多组输入。

第一行输入节目数量n(1<=n<=1e5)。

接下来n行输入每个节目的开始时间和结束时间。

输出

对于每组输入,输出需要放弃节目的最少数量。

样例输入

3

1 3

2 5

3 6

3

1 1

1 1

1 1

3

-100000 1

-100000 100

-1000000 -1000

样例输出

1

0

2

题解1(C++版本)

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
 
struct Show {
    int l, r;
} a[100005];
 
bool cmp(Show x, Show y) {
    return x.r < y.r; // 按结束时间升序,无需额外判断
}
 
int main() {
    int n;
    while (scanf("%d", &n) != EOF) {
        for (int i = 0; i < n; i++) {
            scanf("%d%d", &a[i].l, &a[i].r);
        }
         
        sort(a, a + n, cmp);
         
        int cnt = 0;
        int lastR = -1e9; // 初始化为-1e9,兼容所有非负时间
        for (int i = 0; i < n; i++) {
            if (a[i].l >= lastR) {
                cnt++;
                lastR = a[i].r;
            }
        }
         
        printf("%d\n", n - cnt);
    }
    return 0;
}
相关推荐
伟大的车尔尼3 天前
贪心题目:重构 2 行二进制矩阵
贪心
伟大的车尔尼4 天前
贪心题目:吃苹果的最大数目
贪心
吞下星星的少年·-·13 天前
Div.2 CF 1130B题(构造,贪心)
算法·贪心·构造
伟大的车尔尼17 天前
贪心题目:加油站
贪心
伟大的车尔尼18 天前
贪心题目:给定行和列的和求可行矩阵
贪心
伟大的车尔尼19 天前
贪心题目:需要教语言的最少人数
贪心
lvwangshu20 天前
T3 涂鸦带师 题解
题解·贪心·倍增·技巧·思维好题·断环成链
吞下星星的少年·-·22 天前
牛客周赛 119B题(贪心)
算法·贪心
吞下星星的少年·-·23 天前
Div.2 CF edu195A题(数学,贪心)
数学·算法·贪心
伟大的车尔尼23 天前
贪心题目:交换一次的先前排列
贪心