1433 勤勞的園丁

2021-10-12 02:31:07 字數 1486 閱讀 5221

描述

有一條長度為m公尺的馬路,路**是種植植物的隔離帶(長度也是m公尺)。有乙個勤勞的園丁,花了d天時間為隔離帶的土地施肥,每天施肥一次。由於園丁用於攜帶肥料的車輛承載能力有限,只能為某一小片連續的土地施肥。而且園丁從小就不認真學政治課,導致記性有點差,每天施肥都是很隨意地選擇一片連續的土地。給隔離帶的土地以1公尺的長度劃分為一格基本單位,為這塊m公尺長的土地分別編號為1、2、3、…、m。第i天施肥時,選擇編號從ai到bi的土地進行施肥(包含ai和bi)。

假設還未開始施肥的時候,每塊土地的肥沃度都是0。當某塊土地在某天被施肥後,該塊土地的肥沃度會加1。問進行了d天的施肥後,肥沃度至少為c的土地有多少公尺?

輸入

多組案例。乙個正整數n,表示案例的數量。

每組案例先是三個正整數m、c、d,然後是d行資料,每行資料有兩個整數ai和bi。

(n<=20,m<=1000000,c<=d<=1000000,1<=ai<=bi<=m)

輸出

針對每組案例,輸出乙個整數,表示肥沃度大於等於c的土地有多少公尺。

每組案例輸出完都要換行。

樣例輸入

110 2 3

2 53 7

1 9樣例輸出

6hint

第2、3、4、5、6、7公尺處的肥沃度都大於等於c

#include

using

namespace std;

intmain()

;//差分陣列,diff[i]表示第i公尺的肥沃度減少

cin >> m >> c >> d;

for(

int i =

0; i < d; i++

)int cnt =

0, x =0;

//x為肥沃度

for(

int i =

1; i <= m; i++)}

cout << cnt << endl;

}return0;

}//f[0] f[1] f[2] f[3] f[4] f[5]

// 0 1 2 3 2 1

//第一天2~4塊

//第二天3~5塊

//第三天1~3塊

//第四天2~900000塊 g[2]++ g[900001]--

//g[0] g[1] g[2] g[3] g[4] g[5] g[6]

// 0 1 1 1 -1 -1 -1

//g[i]=f[i]-f[i-1]

//f[0] f[1] f[2] f[3] f[4] f[5]

// 0 1 2 3 4 5

//f[i]=g[0]+g[1]+...g[i]=f[i-1]+g[i]

勤勞的老人

那位老人正在賣菜,他正擺放著車裡蘿蔔 白菜和菠菜,他的腰深深地彎著,幾乎九十度,你還以為他彎著腰在擺菜。其實他一直就是這樣,只不過腰比以前更彎了,他更老了。女兒小的時候,我常常帶她去我們附近的田地裡去玩,那條通往田間的路很寬很靜,偶爾有一兩個人經過,他們都是遙遠的乙個村里賣菜的人,每天早晨,天還未亮...

HYSBZ 1935 Tree 園丁的煩惱

很久很久以前,在遙遠的大陸上有乙個美麗的國家。統治著這個美麗國家的國王是乙個園藝愛好者,在他的 裡種植著各種奇花異草。有一天國王漫步在花園裡,若有所思,他問乙個園丁道 最近我在思索乙個問題,如果我們把花壇擺成六個六角形,那麼 那麼本質上它是乙個深度優先搜尋,陛下 園丁深深地向國王鞠了一躬。嗯 我聽說...

Codevs 4672 辛苦的老園丁

那個一看這不是 最大獨立集 的最大權值和,類似 反圖 最大團 np問題 搜尋解決 改一下模板即可 參考最大獨立集 maximum clique最大團問題 4672.cpp sun oct 9 12 58 23 2016 this file is made by yjinpeng,created by...