当前位置: 首页 > news >正文

网站开发用什么开发无锡新吴区建设环保局网站

网站开发用什么开发,无锡新吴区建设环保局网站,网站解除域名绑定,WordPress网站主题升级本题为一道有约束的分层图最短路问题。跟分层图最短路不一样的是,本题有一个连续 $k$ 短路不需要花费的一个约束条件,那么我们在传递状态的时候只需要特判一下,如果当前的已经使用了免费次数了,那么我们接下来我们松弛的时候就不需…

本题为一道有约束的分层图最短路问题。

跟分层图最短路不一样的是,本题有一个连续 $k$ 短路不需要花费的一个约束条件,那么我们在传递状态的时候只需要特判一下,如果当前的已经使用了免费次数了,那么我们接下来我们松弛的时候就不需要花费。

这里我们使用一个二维数组 $dis_{i,k}$ 表示当前到达第 $i$ 个节点,使用了 $k$ 次免费次数的最短路径,那么我们可以得到状态转移方程:

不需要花费时:$dis_{v,{k-1}} = \min(dis_{v,{k-1}}, dis_{u,k})$。

需要花费时:$dis_{v,k} = \min(dis_{v,k}, dis_{u,k} + w)$。

C++ 代码如下:

#include <bits/stdc++.h>
using namespace std;const int maxn = 2000005;
const int inf = 1047483647;struct node {int to, next, data;
};node edge[maxn];
int head[maxn], cnt, k, n, m;void add_edge(int from, int to, int data) {edge[++cnt].to = to;edge[cnt].data = data;edge[cnt].next = head[from];head[from] = cnt;
}int dis[1005][15];
bool vis[1005][15];struct heap {int node, data, step;heap(int n, int d, int s) : node(n), data(d), step(s) {}bool operator>(const heap& h) const {return data > h.data;}
};void dijkstra() {memset(vis, 0, sizeof(vis));memset(dis, 0x3f, sizeof(dis));dis[0][k] = 0;priority_queue<heap, vector<heap>, greater<heap>> q;q.push(heap(0, 0, k));while (!q.empty()) {int now = q.top().node;int step = q.top().step;q.pop();if (vis[now][step])continue;vis[now][step] = true;for (int i = head[now]; i != 0; i = edge[i].next) {int to = edge[i].to, data = edge[i].data;if (step < k && step > 0 && dis[to][step - 1] > dis[now][step]) {dis[to][step - 1] = dis[now][step];q.push(heap(to, dis[to][step - 1], step - 1));}else if (step == k || step == 0) {if (dis[to][step] > dis[now][step] + data) {dis[to][step] = dis[now][step] + data;q.push(heap(to, dis[to][step], step));}if (step == k && dis[to][step - 1] > dis[now][step]) {dis[to][step - 1] = dis[now][step];q.push(heap(to, dis[to][step - 1], step - 1));}}}}
}int main() {cin >> n >> k >> m;while (m--) {int x, y, z;cin >> x >> y >> z;add_edge(x, y, z);add_edge(y, x, z);}dijkstra();cout << min(dis[n - 1][k], dis[n - 1][0]) << endl;return 0;
}

http://www.dtcms.com/a/411220.html

相关文章:

  • 深圳易捷网站建设计算机(网站建设与维护)
  • 智能微电网 —— 如何无缝集成分布式光伏 / 风电?
  • 苏州网站建设的公司万维网
  • 比较好的网站建设论坛wordpress纯静态化
  • 昆明云南微网站搭建西安网络建站
  • 怎么做二维码进入公司网站做网站推广优化哪家好
  • Java 中的代理模式
  • 网站 繁体 js汽车cms
  • 怀化 网站建设东海县做网站广告
  • 嘉兴网页制作网站排名企业网站建设用什么语言
  • 《录井工程与管理》——第六章 钻井参数录井
  • 视觉/深度学习/机器学习相关面经总结(3)(持续更新)
  • Qt 自定义控件(继承 QWidget)面试核心指南
  • 网站建设友汇wordpress自动提取标签
  • 网络编程初识
  • Apring Ai 和Spring Ai Alibaba有什么区别
  • 网站开发的例子网站获取信息
  • 活到老学到老之Jenkins build triggers中的定时schedule规则细讲
  • 企业级 MySQL 8 全流程指南:源码编译安装、主从同步、延迟复制、半同步与 MHA 高可用搭建
  • 有服务器了怎么做网站三星网上商城分期
  • 交付场景下的 iOS 混淆实战,无源码部分源码如何做成品加固、供应链验证与交付治理
  • 中国菲律宾商会网站seo优化免费
  • CS课程项目设计18:基于Insightface人脸识别库的课堂签到系统
  • 收录网站的二级域名郑州又上热搜了
  • 济南企业型网站深圳定制网站制作
  • 【2025】Mixxx 2.5.1安装教程保姆级一键安装教程(附安装包)
  • 算法学习之 二分
  • Carboxyrhodamine 110 Alk,羧基罗丹明110-炔基在点击化学的应用
  • 日记 - 2025.9.26 读研日记(二)
  • 做网站数据库表设计优化大师win7官方免费下载