日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

BZOJ 4898 Luogu P3778 [APIO2017]商旅 (分数规划、最短路)

發布時間:2025/3/15 编程问答 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 BZOJ 4898 Luogu P3778 [APIO2017]商旅 (分数规划、最短路) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目鏈接: (bzoj)https://www.lydsy.com/JudgeOnline/problem.php?id=4898

(luogu)https://www.luogu.org/problemnew/show/P3778

題解: 先Floyd求任意兩點最短路。

二分答案\(mid\)之后把邊權乘以\(mid\)判斷是否有大于\(0\)的即可。

\(O(n^2)\)枚舉每一對點,然后如果能實現從\(i\)點買入\(j\)點賣出,那么從\(i\)\(j\)連邊代價為利潤減(最短路乘以\(mid\))。

然后直接在原圖上SPFA判正環即可。

時間復雜度\(O(ShortestPath(n,m+n^2)+n^3+n^2k)\)

自己還想到另一種做法就是設\(dp[i][j]\)為在\(i\)點持物品為\(j\)的最大利潤然后SPFA轉移,沒實現過。估計不可行,即使是對的也太慢。

代碼

#include<cstdio> #include<cstdlib> #include<cstring> #include<cassert> #include<algorithm> #define llong long long using namespace std;const int N = 100; const int M = 10000; const int P = 1000; const llong INF = 2000000000ll; struct AEdge {int u,v; llong w; } ae[M+3]; struct Edge {int v,nxt; llong w; } e[(M<<1)+3]; llong dist[N+3]; int que[N+3]; bool inq[N+3]; int tot[N+3]; bool vis[N+3]; int fe[N+3]; llong ai[N+3][P+3],ao[N+3][P+3]; llong mxv[N+3][N+3]; llong dis[N+3][N+3]; int n,m,p,en;void addedge(int u,int v,llong w) { // printf("addedge %d %d %lld\n",u,v,w);en++; e[en].v = v; e[en].w = w;e[en].nxt = fe[u]; fe[u] = en; }void clear() {for(int i=1; i<=n; i++) fe[i] = 0,vis[i] = false;for(int i=1; i<=en; i++) {e[i].v = e[i].w = e[i].nxt = 0;}en = 0; }bool spfa(int s) {for(int i=1; i<=n; i++) dist[i] = -INF,tot[i] = 0,inq[i] = false;int head = 1,tail = 2; que[tail-1] = s; dist[s] = 0ll; inq[s] = true; tot[s] = 1; vis[s] = true;while(head!=tail){int u = que[head]; head++; if(head>n+1) head = 1;for(int i=fe[u]; i; i=e[i].nxt){int v = e[i].v;if(dist[v]<=dist[u]+e[i].w){dist[v] = dist[u]+e[i].w;vis[v] = true;if(!inq[v]){que[tail] = v; tail++; if(tail>n+1) tail = 1;inq[v] = true; tot[v]++;if(tot[v]>n) return true;}}}inq[u] = false;}return false; }int main() {scanf("%d%d%d",&n,&m,&p);for(int i=1; i<=n; i++) for(int j=1; j<=n; j++) dis[i][j] = INF;for(int i=1; i<=n; i++){for(int j=1; j<=p; j++){scanf("%lld%lld",&ai[i][j],&ao[i][j]);}}for(int i=1; i<=m; i++){scanf("%d%d%lld",&ae[i].u,&ae[i].v,&ae[i].w);dis[ae[i].u][ae[i].v] = ae[i].w;}for(int k=1; k<=n; k++){for(int i=1; i<=n; i++){for(int j=1; j<=n; j++){dis[i][j] = min(dis[i][j],dis[i][k]+dis[k][j]);}}} // for(int i=1; i<=n; i++) for(int j=1; j<=n; j++) printf("dis[%d][%d]=%lld\n",i,j,dis[i][j]);for(int i=1; i<=n; i++){for(int j=1; j<=n; j++){mxv[i][j] = -INF;if(dis[i][j]){for(int k=1; k<=p; k++){if(ai[i][k]!=-1 && ao[j][k]!=-1) {mxv[i][j] = max(mxv[i][j],ao[j][k]-ai[i][k]);}}} // printf("mxv[%d][%d]=%lld\n",i,j,mxv[i][j]);}}llong left = 0ll,right = INF;while(left<right){llong mid = (left+right+1ll)>>1; // printf("left%lld right%lld mid%lld\n",left,right,mid);for(int i=1; i<=m; i++){addedge(ae[i].u,ae[i].v,-ae[i].w*mid);}for(int i=1; i<=n; i++){for(int j=1; j<=n; j++){if(mxv[i][j]>-INF) {addedge(i,j,mxv[i][j]-mid*dis[i][j]);}}}bool ok = false;for(int i=1; i<=n; i++){if(!vis[i]) {bool cur = spfa(i); if(cur) {ok = true; break;}}}if(ok) {left = mid;}else {right = mid-1;}clear();}printf("%lld\n",left);return 0; }

總結

以上是生活随笔為你收集整理的BZOJ 4898 Luogu P3778 [APIO2017]商旅 (分数规划、最短路)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产成人自拍在线 | 欧美国产一级片 | 日韩精品v | 一区二区三区欧美在线 | 欧美偷拍少妇精品一区 | 横恋母在线观看 | www啪啪 | 一区二区伦理片 | 国产高潮国产高潮久久久91 | 毛片aaaaa| 国产美女在线精品 | 男女性生活毛片 | 婷婷导航 | 日韩在线视频网站 | 亚洲午夜福利一区二区三区 | 成人精品一区二区三区电影 | 亚洲欧美中文日韩在线观看 | 无码成人一区二区 | av视屏在线| 亚洲精品乱码久久久久久久 | 天堂va蜜桃一区 | 强行挺进白丝老师里呻吟 | 一道本在线观看视频 | 欧美亚洲一 | 很黄很污的视频网站 | 无码人妻少妇伦在线电影 | 日本高清不卡在线观看 | 一区日韩 | 肉色丝袜脚交一区二区 | 亚洲高清色 | 日韩欧美一区二区区 | 丰满少妇一区二区三区 | 日本成人动漫在线观看 | 日本不卡一区在线观看 | 韩日在线视频 | 偷偷操不一样的99 | 亚洲4区 | 亚洲天堂系列 | 岛国毛片在线观看 | 亚洲一卡二卡三卡 | 夜夜精品一区二区无码 | 国产专区一区二区三区 | 欧美67194| www.日本com| 69视频一区二区三区 | 在线观看 一区 | 青青草十七色 | 欧美日韩一区二区三区在线观看 | 久草综合在线 | 丁香在线视频 | 欧洲人妻丰满av无码久久不卡 | 欧美一区二区三区免费看 | www日本黄色| 99爱精品| 91免费精品视频 | 中文字幕在线日亚洲9 | 中文字幕人成人乱码亚洲电影 | 一级a性色生活片久久毛片 爱爱高潮视频 | 爱草av | 亚洲最大在线观看 | 国产一区91精品张津瑜 | 欧美成人猛片aaaaaaa | 爱情岛论坛亚洲品质自拍视频 | 在线观看网址你懂的 | 国产精品传媒在线 | 日日夜夜精品免费视频 | 免费三级网站 | 羞羞的网站在线观看 | 亚洲1页 | 日韩三级视频在线播放 | 国产精品又黄又爽又色无遮挡 | 亚洲综合成人亚洲 | 国产精品高潮呻吟久久久久久 | 国产一级二级在线 | 日韩精品视频在线观看免费 | 久久精品免费在线 | 亚洲人妻电影一区 | 99视频网站 | 国产精品毛片va一区二区三区 | 亚洲激情综合网 | 91在线无精精品白丝 | 久久aⅴ国产欧美74aaa | 国产精品久久久午夜夜伦鲁鲁 | 在线能看的av| 成人免费毛片男人用品 | 天堂在线资源8 | 欧美精品999 | 亚洲一区二区三区国产 | 午夜精品在线免费观看 | 国产精品无码内射 | 国产av日韩一区二区三区精品 | 亚洲女优视频 | 国产成人毛片 | 欧美另类综合 | 国产精品揄拍100视频 | 麻豆成人久久精品一区二区三区 | 男女羞羞动态图 | 欧美熟妇精品久久久久久 | 少妇光屁股影院 |