【題解】
先用floyed處理出兩點間的最短路。
設f[i][j][k]表示走到第i個教室,總共換了j次,當前換或者不換,期望的最小移動距離。
分情況討論來轉移即可。
1 #include2 #include3 #include4#define ll long long
5#define rg register
6#define n 2010
7using
namespace
std;
8int n,m,v,e,dis[310][310
],c[n],d[n];
9double f[n][n][2],k[n],ans=2e9;
10 inline int
read()
16int
main()
30for(rg int mid=1;mid<=v;mid++)
31for(rg int i=1;i<=v;i++)
32for(rg int j=1;j<=v;j++) dis[i][j]=dis[j][i]=min(dis[i][j],dis[i][mid]+dis[mid][j]);
33for(rg int i=2;i<=n;i++)47}
48}49for(rg int i=0;i<=m;i++) ans=min(ans,min(f[n][i][0],f[n][i][1
]));
50 printf("
%.2lf\n
",ans);
51return0;
52 }
洛谷 1850 換教室
有n個時間段,每個時間段有2節課,最多可以換m次課,概率給出 把校園抽象成無向圖,求耗費最小體力值這是一道期望dp,f i j k 表示考慮到第i個教室,換了j次,k為0 1,表示這次是否換 分四種情況,具體見 double的輸入提示符是 lf,不是 llf include include incl...
NOIP2016蚯蚓(洛谷2827)
標籤 佇列,模擬 題目描述 本題中,我們將用符號 c 表示對c向下取整,例如 3.0 3.1 3.9 3。蛐蛐國最近蚯蚓成災了!隔壁跳蚤國的跳蚤也拿蚯蚓們沒辦法,蛐蛐國王只好去請神刀手來幫他們消滅蚯蚓。蛐蛐國裡現在共有n只蚯蚓 n為正整數 每只蚯蚓擁有長度,我們設第i只蚯蚓的長度為a i i 1,2...
洛谷P2827,NOIP2016 蚯蚓
傳送門 考慮優先佇列 但是蚯蚓的長度是變化的,如果每一次操作都修改所有蚯蚓的長度,必然超時.但是每一次所有蚯蚓中,只有被斬斷生成的兩個沒有 q,其它所有蚯蚓長度均 q.不難想到,用優先佇列 兩個值 len表示被壓入優先佇列時的長度,t表示被壓入優先佇列的時間,如果當前時間為i,那麼當前蚯蚓的實際長度...