區間相交問題

2021-07-15 02:34:50 字數 728 閱讀 8713

區間相交問題

time limit:1000ms     memory limit:32768kb     64bit io format:%i64d & %i64u

practice

fzu 1230

description

給定 x 軸上 n 個閉區間。去掉盡可能少的閉區間,使剩下的閉區間都不相交。

★演算法設計: 對於給定的 n 個閉區間,計算去掉的最少閉區間數。

input

對於每組輸入資料,輸入資料的第一行是正整數 n (1<=n<=40,000),表示閉區間數。接下來的 n 行中,每行有 2 個整數,分別表示閉區間的 2 個端點。

output

輸出計算出的去掉的最少閉區間數。

sample input

310 20

15 10

20 15

sample output

思路:貪心演算法

區間相交問題也是貪心演算法的經典問題之一。

/*ac*/

#include#include#includeusing namespace std;

struct data

;bool cmp(struct data a,struct data b)

}sort(v.begin(),v.begin()+n,cmp);

int num=0,m;

m=v[0].tail;

for (i=1;i

區間相交問題

原題 fzu 1230 鏈結 給定 x 軸上 n 個閉區間。去掉盡可能少的閉區間,使剩下的閉區間都不相交。演算法設計 對於給定的 n 個閉區間,計算去掉的最少閉區間數。input 對於每組輸入資料,輸入資料的第一行是正整數 n 1 n 40,000 表示閉區間數。接下來的 n 行中,每行有 2 個整...

區間不相交問題

區間不相交問題 給出n個開區間 x,y 從中選擇盡可能多的開區間,使得這些開區間兩兩沒有交集。1.如圖 a 所示,當i1區間包含於i2區間時,我們選擇i1。因為這樣會剩下更多空間留給其他區間。2.如圖 b 所示,當區間不存在完全包含的關係時,按區間左端點從大到小排序 當然也可以按右端點排序,但是後續...

區間問題 最大不相交區間數量 區間問題 貪心

玄學的貪心問題,一般全憑直覺。貪心問題沒有固定討論,沒有模板,見多了就好了,證明想法的正確性是很困難的,大多採用反證法。區間問題無非左端點 右端點 左右端點排序 908.最大不相交區間數量 本題和 區間問題 區間選點 區間問題 貪心 一模一樣,乙份 交兩遍就行了。貪心思路和證明思路都一致,簡單對問題...