dp+spfa
題目大意:給定乙個無向圖,運輸n天,其中有些天有些點不能走,更換路線代價為k,求代價總和
首先令cost[i][j]為第i天到第j天都走同一路線的最小花銷 這個用spfa預處理
然後就是動規的問題了 令f[i]為1~i天的最小花銷
則f[i]=min ( 0<=j
注意m和n別寫反
乘天數之前要特判是不是正無窮
我自己的**:
#include#include#include#include#include#includeusing namespace std;
long long first[201];
struct node
;node bian[40000];
long long cost[201][201];
long long n,m,k,d,e;
long long size;
bool used[205][205];
bool sta[201];
bool exist[205];
long long dis[205];
long long p[400001];
long long dp[201];
long long read()
while(c>='0'&&c<='9')
return k*f;
}void inser(long long a,long long b,long long c)
long long spfa()}}
} return dis[m];
}int main()
d=read();
for(i=1;i<=d;i++)
for(i=1;i<=n;i++)
}// for(i=1;i<=n;i++) dp[i]=100000000;
for(i=1;i<=n;i++)
{dp[i]=cost[1][i]*i;
for(j=1;j
bzoj1003物流運輸
物流公司要把一批貨物從碼頭a運到碼頭b。由於貨物量比較大,需要n天才能運完。貨物運輸過程中一般要轉 停好幾個碼頭。物流公司通常會設計一條固定的運輸路線,以便對整個運輸過程實施嚴格的管理和跟蹤。由於各種 因素的存在,有的時候某個碼頭會無法裝卸貨物。這時候就必須修改運輸路線,讓貨物能夠按時到達目的地。但...
bzoj 1003 物流運輸
description 物流公司要把一批貨物從碼頭a運到碼頭b。由於貨物量比較大,需要n天才能運完。貨物運輸過程中一般要轉 停好幾個碼頭。物流公司通常會設計一條固定的運輸路線,以便對整個運輸過程實施嚴格的管理和跟蹤。由於各種 因素的存在,有的時候某個碼頭會無法裝卸貨物。這時候就必須修改運輸路線,讓貨...
bzoj 1003 物流運輸
我用的是dijkstra dp 當然是參考大佬們的啦 dijkstra用來進行預處理,處理出dis start time end time start time,end time 時間段的1 m的最短路,其實很簡單,我們首先要把在某個時間段不能裝卸貨物的碼頭給預處理出來,可以用字首和來處理,具體看 ...