当前位置: 首页> 游戏> 手游 > 创新的产品设计_网站软件下载安装免费版_app推广平台接单渠道_搜索引擎优化方法有哪些

创新的产品设计_网站软件下载安装免费版_app推广平台接单渠道_搜索引擎优化方法有哪些

时间:2025/7/19 0:14:54来源:https://blog.csdn.net/weixin_51735301/article/details/144358368 浏览次数:0次
创新的产品设计_网站软件下载安装免费版_app推广平台接单渠道_搜索引擎优化方法有哪些

 

 

 

#include <cstdio>
#include <vector>
#include <algorithm>
#include <cstring>
using namespace std;
const int maxn = 510;
const int INF = 1000000000;
int c, tgt, n, m, G[maxn][maxn], bikeNum[maxn];
int dis[maxn],vis[maxn]={0},minNeed = INF, minRemain = INF;
vector<int> path,tempPath;
vector<int> pre[maxn];int findNotFoundMin(){int minIdx=-1,minDis=INF;for(int i = 0; i <= n; i++){if(vis[i] == 0 && dis[i] < minDis){minDis = dis[i];minIdx = i;}}return minIdx;
}void Dijkstra(){fill(dis, dis+maxn, INF);dis[0] = 0;for(int i = 0; i <= n; i++){int min = findNotFoundMin();if(min == -1) break;vis[min] = 1;for(int j = 0; j <= n; j++){if(vis[j] == 0 && G[min][j] != INF){if(G[min][j]+dis[min] < dis[j]){dis[j] = G[min][j]+dis[min];pre[j].clear();pre[j].push_back(min);}else if(G[min][j]+dis[min] == dis[j]){pre[j].push_back(min);}}}}
}
void DFS(int v){if(v == 0){tempPath.push_back(v);int need=0,remain=0;for(int i = tempPath.size()-1; i >= 0; i--){int idx = tempPath[i];if(bikeNum[idx] > 0){remain += bikeNum[idx];}else{if(remain > abs(bikeNum[idx])){remain -= abs(bikeNum[idx]);}else{need += abs(bikeNum[idx]) - remain;remain = 0;}}}if(need < minNeed){minNeed = need;minRemain = remain;path = tempPath;}else if(need == minNeed && remain < minRemain){minRemain = remain;path = tempPath;}tempPath.pop_back();return;}tempPath.push_back(v);for(int i = 0; i < pre[v].size(); i++){DFS(pre[v][i]);}tempPath.pop_back();
}
int main() {scanf("%d%d%d%d", &c, &n, &tgt, &m);int si,sj,t;int tmp;for(int i = 1; i <= n; i++){scanf("%d", &tmp);bikeNum[i] = tmp - c / 2;}fill(G[0], G[0]+maxn*maxn, INF);for(int i = 0; i < m; i++){scanf("%d%d%d", &si, &sj, &t);G[si][sj] = t;G[sj][si] = t;}Dijkstra();DFS(tgt);printf("%d ", minNeed);for(int i = path.size()-1; i >= 0; i--){printf("%d", path[i]);if(i > 0){printf("->");}}printf(" %d\n", minRemain);return 0;
}

关键字:创新的产品设计_网站软件下载安装免费版_app推广平台接单渠道_搜索引擎优化方法有哪些

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: