51nod 1133 不重疊的線段

2021-08-07 02:55:57 字數 781 閱讀 8028

x軸上有n條線段,每條線段有1個起點s和終點e。最多能夠選出多少條互不重疊的線段。(注:起點或終點重疊,不算重疊)。

例如:[1 5][2 3][3 6],可以選[2 3][3 6],這2條線段互不重疊。

input

第1行:1個數n,線段的數量(2 <= n <= 10000)

第2 - n + 1行:每行2個數,線段的起點和終點(-10^9 <= s,e <= 10^9)

output

輸出最多可以選擇的線段數量。

input示例

3 1 5

2 3

3 6

output示例

2典型的區間問題。求最多能夠選出多少條互不重疊的線段。跟杭電2037類似,,按照終點排序,o(n)掃一下即可。

#include 

using

namespace

std;

typedef

long

long ll;

const

int maxn = 1e5+100;

typedef pairp;

pairseg[maxn];

bool cmp(p a,p b)

sort(seg,seg+n,cmp);

int tmp=-(1

<<30);

int sum=0;

for(int i=0;iif(seg[i].first>=tmp)

}cout

0;}

51Nod1133 不重疊的線段

x軸上有n條線段,每條線段有1個起點s和終點e。最多能夠選出多少條互不重疊的線段。注 起點或終點重疊,不算重疊 例如 1 5 2 3 3 6 可以選 2 3 3 6 這2條線段互不重疊。經典的序列上的區間問題。明顯的貪心 把右端點從小到大排乙個序 第一關鍵字 左端點從小到大排乙個序 第二關鍵字 然後...

51Nod 1133 不重疊的線段

x軸上有n條線段,每條線段有1個起點s和終點e。最多能夠選出多少條互不重疊的線段。注 起點或終點重疊,不算重疊 例如 1 5 2 3 3 6 可以選 2 3 3 6 這2條線段互不重疊。input 第1行 1個數n,線段的數量 2 n 10000 第2 n 1行 每行2個數,線段的起點和終點 10 ...

51Nod 1133 不重疊的線段

1133 不重疊的線段 基準時間限制 1 秒 空間限制 131072 kb 分值 10 難度 2級演算法題 x軸上有n條線段,每條線段有1個起點s和終點e。最多能夠選出多少條互不重疊的線段。注 起點或終點重疊,不算重疊 例如 1 5 2 3 3 6 可以選 2 3 3 6 這2條線段互不重疊。inp...