刷題 貪心 觀光公交

2022-08-13 20:54:14 字數 717 閱讀 1606

題解還是考後再寫吧,先鴿了

#include#include

#include

using

namespace

std;

intn,m,k;

const

int n=100003

;int dis[n],out[n],peo[n],bus[n];//

dis[i]表示到下一站的時間,中間會修改,peo表示每個站人到的最後時間,不修改,bus表示車到的時間,被dis影響

intans;

intmain()

//work

int inf[n];//

如果在i-i+1站中間,用裝備,會對後面的人造成的影響

while(k--)

else inf[i]=0

;

int mx_inf=0,pos=0

;

for(int i=1;i)

if(inf[i] >mx_inf )

mx_inf=inf[i],pos=i;

if(!pos) break

; dis[pos]--;

}//output

for(int i=2;i<=n;i++)

printf(

"%d\n

",ans);

return0;

}

LUOGU P1315 觀光公交 貪心

傳送門 首先我們要把加速器乙個乙個的用,用在什麼地方呢。假設當前站車比人晚到,那麼車上的人與等待的人都會受到影響 否則的話只有在當前站下車的人有影響。我們第一步先求出車到站的時間,對於一條路來說,如果人等車,那麼在這條路用加速器的效果可以繼續向後延伸。否則只會對下一站造成影響。這樣的話維護乙個陣列 ...

NOIP2011 觀光公交(貪心)

風景迷人的小城y 市,擁有n 個美麗的景點。由於慕名而來的遊客越來越多,y 市特意安排了一輛觀光公交車,為遊客提供更便捷的交通服務。觀光公交車在第 0 分鐘出現在 1號景點,隨後依次前往 2 3 4 n 號景點。從第 i 號景點開到第 i 1 號景點需要 di 分鐘。任意時刻,公交車只能往前開,或在...

NOIP2011 觀光公交 貪心 遞推

傳送門 60 資料 也許能用dp 100 資料 k範圍太大,不能dp 題解 想一想貪心。如果只有乙個加速器,我們肯定選乘坐人數最多的那條路。擴充套件到m個加速器的情況,只需要每次選取乘坐人數最多的路,使用加速器更新答案,就行了。對於乙個站,可以分成兩種情況 車等人,人等車。因此,使用乙個加速器,只會...