Week3 HomeWork B 區間選點 貪心

2021-10-03 14:27:58 字數 781 閱讀 4247

演算法/思路分析

**

數軸上有 n 個閉區間 [a_i, b_i]。取盡量少的點,使得每個區間內都至少有乙個點(不同區間內含的點可以是同乙個)

第一行1個整數n(n<=100)

第2~n+1行,每行兩個整數a,b(a,b<=100)

乙個整數,代表選點的數目

2

1 54 6

3

1 32 5

4 6

​ 思路:本題是區間覆蓋問題,取最少的點覆蓋所有區間,典型的貪心題。

​ 首先,將所有區間按右端點大小公升序排列(右端點相同,左端點降序);

​ 迴圈上述過程直至所有區間全部遍歷,即可得到答案。

#include

#include

#include

#include

#include

#include

using namespace std;

struct region

}r[105];

int n,ans =0;

//區間選點

void

choose()

}}intmain()

week3 區間選點

title 數軸上有 n 個閉區間 x i,y i 取盡量少的點,使得每個區間內都至少有乙個點 不同區間內含的點可以是同乙個 input 第一行1個整數n n 100 第2 n 1行,每行兩個整數x,y x,y 100 output 乙個整數,代表選點的數目。分析 總結 貪心準則直接決定了貪心演算法...

Week 3 區間選點

數軸上有 n 個閉區間 a i,b i 取盡量少的點,使得每個區間內都至少有乙個點 不同區間內含的點可以是同乙個 input 第一行1個整數n n 100 第2 n 1行,每行兩個整數a,b a,b 100 output 乙個整數,代表選點的數目 樣例輸入1 2 1 54 6樣例輸出1 1樣例輸入2...

Week3 區間選點 區域性貪心

題目內容 數軸上有 n 個閉區間 a i,b i 取盡量少的點,使得每個區間內都至少有乙個點 不同區間內含的點可以是同乙個 輸入格式 第一行1個整數n n 100 第2 n 1行,每行兩個整數a,b a,b 100 輸出格式 乙個整數,代表選點的數目 樣例 input 21 5 4 6output ...