新增注釋小能手上線。
貪心注意:
1.本站使用加速器可能對後續站產生影響
2.若本站車等人,使用加速器也可使這一站下車的人提前下車,優化結果
3.若有剩餘加速器,則一律用在n-1到n站之間
1 #include2#define ff(s,e) for(int i=s;i<=e;i++)
3using
namespace
std;
4 inline int
read()
10while(ch>='
0'&&ch<='9'
)14return x*f;15}
16const
int n=100000;17
intn,m,k;
18int
dis[n],last[n],g[n],enter[n],sum[n];
19//
i->i+1時間 乘客i站到齊時間 i站時間影響到g[i]站 i站到達時間 i站影響人數;
20int
ans,maxx;
21struct
qwqa[n];
24int
main()
32 enter[1]=last[1
];33 ff(1
,n)36 ff(2
,n)39 ff(1
,m)42
for(;k>0;k--)
50 ff(1,n-1
)56 ans-=maxx;
57 dis[tar]--;
58 ff(2
,n)61
}62 printf("%d"
,ans);
63return0;
64 }
洛谷P1315 觀光公交
題目 模擬 貪心 一開始看到10 5的資料,以為要klogn就敲了個線段樹上去 結果沒考慮後效性,只過了3個點 正解 一開始先處理出每一站的到站時間是對的,而隨著修改到站時間的改變不一定滿足字首關係 假設在某一站有人很晚才出發,那不管先前改變了多少後面的到站時間都是不變的 綜上 還需要維護修改一段距...
洛谷P1315 觀光公交
題目 如果沒有氮氣加速器,則該題為乙個模擬題。但是本題存在氮氣加速器,所以我們需要考慮貪心策略。題目要求我們使所有人等待的時間最短,因此我們需要算出每段路徑 路徑即為車站之間的 d 對時間的貢獻多少,取其中最多的減去就好了。首先我們需要求出每個車站最遠向右影響到什麼地方,然後算出這段地方的影響總人數...
洛谷P1315 觀光公交
風景迷人的小城y 市,擁有n 個美麗的景點。由於慕名而來的遊客越來越多,y 市特意安排了一輛觀光公交車,為遊客提供更便捷的交通服務。觀光公交車在第 0 分鐘出現在 1號景點,隨後依次前往 2 3 4 n 號景點。從第 i 號景點開到第 i 1 號景點需要 di 分鐘。任意時刻,公交車只能往前開,或在...