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 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程