[貪心]最大線段重疊
https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1091
按照左端點從小到大,相等時右端點從小到大排序,掃一遍陣列,維護之前所有線段最右的端點,由於陣列已經排過序了,所以可以保證之前所有線段的左端點一定小於等於當前所選擇線段的左端點,所以就不用管左端點,直接用當前線段的右端點和之前所有線段的最大右端點比較一下,更新答案和最大右端點。
#include<bits/stdc++.h>
using namespace std;
const int maxn = 5e4 + 5;
pair<int, int> a[maxn];
int main()
{
ios::sync_with_stdio(0); cin.tie(0);
int n;
cin >> n;
for (int i = 0; i < n; ++i){
cin >> a[i].first >> a[i].second;
if (a[i].second < a[i].first) swap(a[i].second, a[i].first);
}
sort(a, a + n);
int maxr = a[0].second, ans = 0;
for (int i = 1; i < n; ++i){
if (a[i].second > maxr){
ans = max(ans, maxr - a[i].first);
maxr = a[i].second;
}else ans = max(ans, a[i].second - a[i].first);
}
cout << ans << endl;
return 0;
}
相關文章
- 貪心演算法-找不重疊的區間段演算法
- 貪心演算法之無重疊區間演算法
- 力扣 leetcode 435. 無重疊區間 貪心力扣LeetCode
- 【力扣】最大子陣列和(貪心)力扣陣列
- BZOJ5249: [2018多省省隊聯測]IIIDX(線段樹 貪心)
- 洛谷P3586 [POI2015]LOG(貪心 權值線段樹)
- Luogu P4425 轉盤 題解 [ 黑 ] [ 線段樹 ] [ 貪心 ] [ 遞迴 ]遞迴
- ut.cpp 最大線段並減線段交 [線段樹]
- Codeforces 1070C - Cloud Computing 思路+線段樹+貪心 (2018-2019 ICPC, NEERC)Cloud
- 貪心
- 【LeetCode貪心#09】用最少數量的箭引爆氣球,(涉及區間重疊情況判斷)LeetCode
- 反悔貪心
- Supermarket(貪心)
- 線段樹(3)——區間操作疊加
- 山海經:線段樹維護最大子段和
- 貪心例題
- 貪心+搜尋
- 【Leetcode每日一題】316. 去除重複字母(棧,貪心)LeetCode每日一題
- HDU 2795 Billboard(線段樹 區間最大)
- ZOJ——Copying Books 最大值最小化問題 (貪心 + 二分)
- [藍橋杯][演算法提高VIP]最大乘積 貪心 雙指標演算法指標
- HDU 5821 Ball(貪心)
- 貪心模式記錄模式
- 反悔貪心雜題
- 貪心演算法演算法
- 貪心、構造合集
- 新增時間段,但是不能與原來陣列中的時間段有重疊陣列
- 貪心-刪數問題
- 貪心-*活動選擇
- 24/03/20 貪心(一)
- HDU 6047 Maximum Sequence (貪心)
- HDU 5813 Elegant Construction (貪心)Struct
- 漲薪【貪心】【快速冪】
- Leetcode 貪心:差值調整LeetCode
- Least Cost Bracket Sequence(貪心)ASTRacket
- 刪數問題(貪心)
- 「貪心」做題記錄
- [反悔貪心] Add One 2