日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > Aizu 1311 Test Case Tweaking(spfa變形,dp)

Aizu 1311 Test Case Tweaking(spfa變形,dp)

來源:程序員人生   發布時間:2015-03-27 08:21:06 閱讀次數:3621次

題目鏈接:http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1311

題意: 給出1張有向圖,和1個權值c,問將1~n亮點之間的最短路徑花費降到c,最少需要修改多少條邊。 數據范圍是100個點,1000條邊。

思路:這道題題目的最關鍵點就是想到用1個2維數據去記錄每一個點的情況(也就是dp式子的定義) dp[x][y] 表示從頂點1動身到達頂點x且修改邊的數量為y時的最小花費(默許修改邊權的時候把邊權直接降為0), 轉移的時候就是斟酌兩種情況: 修改邊權 和 不修改邊權 (當花費加上邊權大于c的時候1定要修改邊權)。 并且要注意在轉移的進程中,要隨時保證花費是小于c的。


code:

#include <cstdio> #include <cstdlib> #include <algorithm> #include <iostream> #include <vector> #include <queue> #include <cstring> #define inf 0x3f3f3f3f using namespace std; const int maxn=1005; vector<pair<int,int> > P[maxn]; int dp[105][maxn],n,m,c; bool vis[105][maxn]; int spfa(int org) { memset(dp,63,sizeof dp); memset(vis,0,sizeof vis); queue<pair<int,int> > que; dp[org][0]=0; que.push(make_pair(org,0)); vis[org][0]=true; while(que.size()){ int v=que.front().first; int nv=que.front().second; que.pop(); if(nv>m) continue; //1定要有 for(int i=0;i<P[v].size();i++){ int u=P[v][i].first,cc=P[v][i].second; //枚舉兩種轉移方式 if(dp[v][nv]<dp[u][nv+1]){ dp[u][nv+1]=dp[v][nv]; if(!vis[u][nv+1]) que.push(make_pair(u,nv+1)); } if(dp[v][nv]+cc<=c&&dp[v][nv]+cc<dp[u][nv]){ dp[u][nv]=dp[v][nv]+cc; if(!vis[u][nv]) que.push(make_pair(u,nv)); } } vis[v][nv]=false; } for(int i=0;i<=m;i++) if(dp[n][i]<inf) return i; } int main() { //freopen("input.txt","r",stdin); int st,ed,cc; while(scanf("%d%d%d",&n,&m,&c),n!=0||m!=0||c!=0){ for(int i=0;i<=n;i++) P[i].clear(); for(int i=0;i<m;i++){ scanf("%d%d%d",&st,&ed,&cc); P[st].push_back(make_pair(ed,cc)); } printf("%d ",spfa(1)); } }


生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国内久久精品 | 久久久久国产精品一区 | 黄色在线免费看 | 久久综合九色综合久久久精品综合 | 久久精选 | 精品国产鲁一鲁一区二区张丽 | 欧美精品一区二区三区在线播放 | 日韩国产欧美在线观看 | 91久久国产综合久久 | 亚洲自拍电影 | 成人午夜精品 | 91精品国产综合久久精品图片 | 99精品国产一区 | 五月综合激情 | 国产精品美女久久久久av超清 | 成人在线高清 | 免费观看日韩毛片 | 日韩在线一区二区三区 | 亚洲黄色中文字幕 | 日本免费在线观看 | 一级久久 | 精品啪啪| 国产一区二区视频在线观看 | 国产精品区二区三区日本 | 一区免费视频 | 精品在线一区二区 | 精品久久综合 | 亚洲国产成人在线 | 久久一区国产 | 欧美一区二区三区四区在线观看 | 免费观看亚洲 | 日韩欧美在线视频 | 亚洲视频免费在线 | 欧美日韩免费看 | av色资源| 精品一区二区三区成人精品 | 国产不卡在线播放 | 国产精品久久久久久久久久久久午夜片 | 看一级黄色片 | 久久成人免费网 | 九九免费视频 |