洛谷 -- P1803 凌乱的yyy / 线段覆盖

题目背景

快 noip 了,yyy 很紧张!

题目描述

现在各大 oj 上有 n 个比赛,每个比赛的开始、结束的时间点是知道的。

yyy 认为,参加越多的比赛,noip 就能考的越好(假的)。

所以,他想知道他最多能参加几个比赛。

由于 yyy 是蒟蒻,如果要参加一个比赛必须善始善终,而且不能同时参加 22 个及以上的比赛。

输入格式

第一行是一个整数 n ,接下来 n 行每行是 22 个整数 ai​,bi​ ( ai​<bi​ ),表示比赛开始、结束的时间。

输出格式

一个整数最多参加的比赛数目。

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;

struct Contest {
    int l, r;
};

int cmp(Contest a, Contest b) {
    return a.r < b.r;
}

int n;
Contest w[1000005];

int main() {
    cin >> n;
    for (int i = 0; i < n; i++)
        cin >> w[i].l >> w[i].r;

    sort(w, w + n, cmp);
    int currentTime = 0, ans = 0;
    for (int i = 0; i < n; i++)
        if (currentTime <= w[i].l) {
            ans++;
            currentTime = w[i].r;
        }
    cout << ans << endl;

    return 0;
}
相关推荐
I_LPL1 小时前
hot100贪心专题
数据结构·算法·leetcode·贪心
颜酱2 小时前
DFS 岛屿系列题全解析
javascript·后端·算法
WolfGang0073212 小时前
代码随想录算法训练营 Day16 | 二叉树 part06
算法
2401_831824963 小时前
代码性能剖析工具
开发语言·c++·算法
Sunshine for you4 小时前
C++中的职责链模式实战
开发语言·c++·算法
qq_416018724 小时前
C++中的状态模式
开发语言·c++·算法
2401_884563244 小时前
模板代码生成工具
开发语言·c++·算法
2401_831920745 小时前
C++代码国际化支持
开发语言·c++·算法
m0_672703315 小时前
上机练习第51天
数据结构·c++·算法
ArturiaZ5 小时前
【day60】
算法·深度优先·图论