有n個時間段,每個時間段有2節課,最多可以換m次課,概率給出
把校園抽象成無向圖,求耗費最小體力值這是一道期望dp,f[i][j][k]表示考慮到第i個教室,換了j次,k為0/1,表示這次是否換
分四種情況,具體見**double的輸入提示符是%lf,不是%llf
#include
#include
#include
#define maxn 2005
#define inf 0x3f3f3f3f
using
namespace std;
int n, m, v, e;
int c[maxn]
, d[maxn]
, dis[
305]
[305];
double f[maxn]
[maxn][2
];double k[maxn]
;void
floyd()
for(
int k =
1; k <= v; k++)}
}int
main()
}double ans = inf;
for(
int i =
0; i <= m; i++
) ans =
min(ans,
(double
)min
(f[n]
[i][0]
, f[n]
[i][1]
));printf
("%0.2lf\n"
, ans)
;return0;
}
洛谷P1850 換教室
傳送門啦 這是寫第乙個概率期望dp。一般看見這種題就想暴力了,看一下資料範圍,暴力應該還是挺好想的吧。24分注意到有6個測試點m 0m 0,則說明不能提出申請,那麼只需要求出全圖的兩兩之間的最短路,路徑唯一確定。52分注意到另外有7個測試點m 1m 1,只能提出一次申請。我們可以直接列舉在 提出申請...
洛谷P1850 換教室
心力憔悴。不知道說什麼。方程還是很好推的,我也很快就推出來了。結果 花了4h 重構了幾遍 才終於意識到這樣寫有問題。真是。include include include include using namespace std const int maxn 2e3 20 const int maxm ...
洛谷P1850 換教室
對於剛上大學的牛牛來說,他面臨的第乙個問題是如何根據實際情況申請合適的課程。在可以選擇的課程中,有 2n 節課程安排在 n 個時間段上。在第 i 1 leq i leq n 個時間段上,兩節內容相同的課程同時在不同的地點進行,其中,牛牛預先被安排在教室 c i 上課,而另一節課程在教室 d i 進行...