牛客 Guard the empire 貪心

2022-05-28 14:51:14 字數 862 閱讀 6227

首先看到題目求最小覆蓋,應該可以想到是貪心類的問題

題目要求覆蓋所有骨龍,首先所有骨龍都會在一段區間內被覆蓋,我們可以算出每個骨龍的這段距離。

之後就是求有多少個點可以將這些區間全部覆蓋,這是貪心的經典問題。

顯然是先排序,以第乙個點的右端點為初始值,往下遍歷,如果某個左端點大於他,那麼更新為當前的右端點,++ans

否則,如果當前的右端點小於他,更新為右端點,這個需要理解一下,因為我們當前的右端點並不能覆蓋它,也就是這兩個區間是包含關係,所以就用類似反悔的方法,把這個點的右端點設為答案。

注意double,但是這題如果按右端點排序,更加好寫

#include#define x first

#define y second

using

namespace

std;

typedef

long

long

ll;typedef pair

pll;

const

int n=2e5+10

;pll p[n];

intd,n;

void cal(int a,int b,int

i)void

work()

else

if(p[i].y

pos=p[i].y;

}cout

}int

main()

cal(a,b,i);

}cout

<

case

"<

<

if(flag)

cout

<

<

else}}

view code

牛客 獎學金

某小學最近得到了一筆贊助,打算拿出其中一部分為學習成績優秀的前5名學生發獎學金。期末,每個學生都有3門課的成績 語文 數學 英語。先按總分從高到低排序,如果兩個同學總分相同,再按語文成績從高到低排序,如果兩個同學總分和語文成績都相同,那麼規定學號小的同學 排在前面,這樣,每個學生的排序是唯一確定的。...

牛客21781 牛兄牛弟

時間限制 c c 1秒,其他語言2秒 空間限制 c c 32768k,其他語言65536k 64bit io format lld 題目描述 一群牛兄牛弟準備去一家餐廳吃飯,已知他們是按照某個順序先後到達餐廳的,第i個到達餐廳的要求坐在離門口至少a i 的距離 牛兄牛弟們不準備讓別人知道他們是兄弟,...

牛客網 華為機試 020 牛客網

密碼要求 1.長度超過8位 2.包括大小寫字母.數字.其它符號,以上四種至少三種 3.不能有相同長度超2的子串重複 說明 長度超過2的子串 一組或多組長度超過2的子符串。每組佔一行 如果符合要求輸出 ok,否則輸出ng 示例1 021abc9000 021abc9abc1 021abc9000 02...