洛谷P5017擺渡車

2022-03-17 17:38:25 字數 586 閱讀 1615

題目

一道做法多種多樣的題,dp做法的狀態也很多。

我用\(dp[i]\)表示在第i秒發車的時間和,然後dp方程就很好寫了

\(dp[i] = dp[j] + i車的等待時間\)j屬於i-2m ~ i-m。

然後i車的等待時間可以用字首和來優化求出,雖然很慢,但是足以通過這道題了。

#include #include #include #include #define n 6011101

using namespace std;

int n, m, t[n]; //等待時間不是最終時間

int minn = 2147483647, dp[n], tim[n], per[n];//dp[i]表示第i時間所等待的時間和的最小值。

inline void init() }}

int main()

for (int i = t[n]; i <= t[n] + m - 1; i++)

minn = min(minn, dp[i]);

printf("%d", minn);

return 0;

}

P5017 擺渡車 題解

p5017 擺渡車 這道題的做法很多,我考慮用斜率優化的方法來做 先定義 f i 表示運走 i 時間之前的人,並且必須在 i 這個時間發車的最小代價 很顯然 f i min f j sum i i t k 我們考慮用乙個類似字首和的東西預處理出 sum i i t k 用 g i 記錄 i 時間前有...

洛谷p1258 小車問題

嚇人,心有餘悸 小車問題 傳送門 洛谷演算法標籤 行吧它居然是個二分 解方程的我抖抖發瑟 作為乙個寫了一頁演草紙才解出來的方程,顯然我要好好寫一寫 希望不會半途而廢 設總路程為s,放下甲去接乙的時間為t,車的速度 為b,人的速度為a 最短時間為x。那麼首先得到兩個式紙 bt a x t s at a...

洛谷 P1350 車的放置

洛谷 p1350 車的放置 有下面這樣的乙個網格棋盤,a,b,c,d表示了對應邊長度,也就是對應格仔數。當a b c d 2時,對應下面這樣乙個棋盤 要在這個棋盤上放k個相互不攻擊的車,也就是這k個車沒有兩個車在同一行,也沒有兩個車在同一列,問有多少種方案。同樣只需要輸出答案mod 100003後的...