全部评论 2

  • #include <algorithm>
    #include <iostream>
    using namespace std;
    // 定义结构体,参数为开始时间和结束时间
    struct node {
    int s, e;
    } a[1010];
    // 排序,将结束时间早的排序在前面
    bool cmp(node a, node b) {
    return a.e < b.e;
    }
    int main() {
    while(1){
    int n;
    cin >> n;
    if(n==0)break;
    for (int i = 0; i < n; i++) {
    cin >> a[i].s >> a[i].e;
    }
    sort(a, a + n, cmp);
    // 定义变量为活动结束时间,以第一个数结尾作为活动结束时间
    int last = a[0].e;
    // 活动的参加数量
    int num = 1;
    for (int i = 1; i < n; i++) {
    // 当前活动的开始时间是大于等于活动结束时间
    if (a[i].s >= last) {
    // 活动选取数量+1,更新活动结束时间
    num++;
    last = a[i].e;
    }
    }
    // 输出活动的参加数量
    cout << num << endl;
    }

    return 0;
    

    }

    应该这么写

    2026-10-10 来自 山东

    1
  • 3

    2026-10-11 来自 浙江

    0

热门讨论