azazinco 2019-10-27 15:54 采纳率: 0%
浏览 176
已结题

给n个开区间,选择尽量多的区间,使得两两不交。

这个代码为什么会超出时间限制?
输入:
11
3 5
1 4
12 14
8 12
0 6
8 11
6 10
5 7
3 8
5 9
2 13

#include <iostream>
using namespace std;
int n, begin9[1001], end9[1001];
void init()
{
    cin >> n;
    for (int i = 1; i <= n; i++)
        cin >> begin9[i] >> end9[i];
}
void qsort(int x, int y)
{
    int i, j, mid, t;
    i = x; j = y; mid = end9[(x + y) / 2];
    while (i <= j) {
        while (end9[i] < mid)
            i++;
        while (end9[j] > mid)
            j--;
    }
    if (i <= j) {
        t = end9[j];
        end9[j] = end9[i];
        end9[i] = t;
        t = begin9[j];
        end9[j] = end9[i];
        end9[i] = t;
        i++;
        j--;
    }
    if (x < j)
        qsort(x, j);
    if (i < y)
        qsort(i, y);
}
void solve()
{
    int ans = 0;
    for (int i = 1, t = -1; i <= n; i++)
        if (begin9[i] >= t) {
            ans++;
            t = end9[i];
        }
    cout << ans << endl;
}
int main()
{
    init();
    qsort(1, n);
    solve();
    return 0;
}
  • 写回答

1条回答 默认 最新

  • dabocaiqq 2019-10-27 22:50
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 QTableWidget重绘程序崩溃
  • ¥15 51寻迹小车定点寻迹
  • ¥15 谁能帮我看看这拒稿理由啥意思啊阿啊
  • ¥15 关于vue2中methods使用call修改this指向的问题
  • ¥15 idea自动补全键位冲突
  • ¥15 请教一下写代码,代码好难
  • ¥15 iis10中如何阻止别人网站重定向到我的网站
  • ¥15 滑块验证码移动速度不一致问题
  • ¥15 Utunbu中vscode下cern root工作台中写的程序root的头文件无法包含
  • ¥15 麒麟V10桌面版SP1如何配置bonding