演算法之路之征服上海交大的oj 水槍滅火

2021-08-14 08:32:59 字數 1235 閱讀 8241

水槍滅火

description

以此題紀念上海「11•15」高樓火災遇害者

11月15日下午,上海靜安區膠州路728號的一幢28層民宅發生嚴重火災。消防部門接警後立刻出動25個消防中隊、百餘輛消防車投入滅火搶救行動,緊急疏散和救助了附近居民百餘人。火災導致58人遇難。

此時大樓的所有樓層已經全部被烈火包圍,每輛消防車的高壓水槍可以對連續的若干個樓層進行滅火,把高樓看成豎直的y軸(原點可放在任意位置),若一輛消防車對[10,1000]這段區域滅火,則10到1000這段區域的火就被撲滅了。請求出在所有消防車完成滅火工作後,已經被撲滅的區域的總長度。

高壓水槍對於控制火勢起著很關鍵的作用。非常遺憾的是,對於28樓的建築,上海高壓水槍的噴射高度「只能到十樓」。

input format

第一行:n (消防車的數目)

以後n行,每行兩個數:ai bi (表示第i個消防車滅火區域的起始位置和終止位置)

−109≤ai,bi≤109

n≤20000

若 ai=bi

,此段區域就是乙個點,看作沒有長度。

output format

輸出被撲滅區域的總長度。

sample input

3 -1 1

5 11

2 9sample output

提交此題

此題主要考查的是對區間的理解,就是解決重複區間的問題

#include 

#include

using

namespace

std;

long

long n,length=0;

struct node;

bool cmp(node a,node b)

int main()

sort(p,p+n,cmp);

for(long

long i=0;ilong

long t = p[i].left;

int flag = 0;

if(p[i].flag == 1)

continue;

for(long

long j=i+1;jif(p[i].right > p[j].left && p[j].flag == 0)

} }

length = length - p[i].left + p[i].right;

}cout

0;}

演算法之路之征服上海交大的oj 矩陣翻轉

矩陣翻轉 description 給定乙個正方形的整數矩陣,輸出將該矩陣按某一方向翻轉後的結果。input format 輸入第一行有乙個整數n,表示一共有n組資料 n不會為負數。之後有n組資料,對於每組資料 第一行有兩個整數a和b,分別表示正方形矩陣的邊長,以及翻轉的方向。當b 0時水平翻轉,當b...

演算法之路之征服上海交大的oj 求和遊戲

求和遊戲 description 石柱上有一排石頭鍵盤,每個鍵上有乙個整數。請你在鍵盤上選擇兩個鍵,使這兩個鍵及其之間的鍵上的數字和最大。如果這個最大的和不為正,則輸出 game over input format 第1行 鍵的個數n。第2.n 1行 鍵上的數字整數 ai 100 ai 100 對於...

演算法之路之征服上海交大的oj 二哥摘蘋果

二哥摘蘋果 題目描述 二哥是乙個懶於行動的人,他想在摘蘋果之前知道自己能摘到多少蘋果,如果實在太少 蘋果樹很茂盛,主要是由於身高原因 他寧可坐在樹下等蘋果自己掉下來砸到頭上。輸入格式 輸入共有兩行。第1行有3個整數,分別表示二哥的身高 凳子的高度和蘋果的個數n。第2行有n個整數,分別表示每個蘋果的高...