PAT甲级 1072 Gas Station 单源最短路
Solution题目要求选择建立一个最佳的加油站前提是这个加油站必须能连通所有的居民住所并使得所有居民住所中距离这个加油站最近的距离尽可能远若有多个选择则选择平均距离最小的加油站若仍然有多个选择则选择序号较小的加油站。代码如下//单源最短路#includeiostream#includemath.h#includealgorithm#includeiomanip#includestring#includevector#defineMAX 1500#defineINF 0x3f3f3f3fusing namespace std;structgas_station{doubledis;//距离加油站最近的距离加油站的距离doubleavg_dis;//平均距离intindex;};vectorgas_stationsta;intvisit[MAX];//访问数组doubledis[MAX];//记录最短距离intmp[MAX][MAX];intn,m;//n为结点数m为加油站数intk,d;//k为边数d为gas station最大服务范围voiddijkstra(ints){//dijkstrafor(inti0;iMAX;i){//初始化dis和visitvisit[i]0;dis[i]INF;}dis[s]0;for(inti1;inm;i){intminvINF;intu-1;for(intj1;jnm;j){if(dis[j]minvvisit[j]0){minvdis[j];uj;}}if(u-1){return;}visit[u]1;for(intv1;vnm;v){if(visit[v]0mp[u][v]!INF){if(dis[v]dis[u]mp[u][v]){dis[v]dis[u]mp[u][v];}}}}}intto_index(string s){//将字符串转为下标intindex0;for(inti0;is.length();i){if(s[i]!G)indexindex*10s[i]-0;}if(s[0]G){indexn;}returnindex;}boolcmp(gas_station a,gas_station b){if(a.disb.dis){returntrue;}elseif(a.disb.dis){if(a.avg_disb.avg_dis){returntrue;}elseif(a.avg_disb.avg_dis){returna.indexb.index;}}returnfalse;}intmain(){for(inti0;iMAX;i){//初始化图for(intj0;jMAX;j){mp[i][j]INF;}}cinnmkd;string s1,s2;inta,b;intlen;for(inti0;ik;i){//读入数据cins1s2len;ato_index(s1);bto_index(s2);mp[a][b]mp[b][a]len;}for(intin1;inm;i){intminlINF;doubletotal_dis0.0;dijkstra(i);bool flagtrue;for(intj1;jn;j){if(dis[j]d){flagfalse;break;}total_disdis[j];if(dis[j]minl){minldis[j];}}if(flag){gas_station temp;temp.disminl;temp.avg_distotal_dis/n;temp.indexi;sta.push_back(temp);}}if(sta.empty()){coutNo Solution;}else{sort(sta.begin(),sta.end(),cmp);coutGsta[0].index-nendl;coutfixedsetprecision(1)sta[0].dis ;coutfixedsetprecision(1)sta[0].avg_dis;}return0;}

相关新闻

JavaScript基础知识介绍——作用域(静态作用域、全局作用域、IIFE、函数作用域和提升、严格模式)

JavaScript基础知识介绍——作用域(静态作用域、全局作用域、IIFE、函数作用域和提升、严格模式)

作用域决定了变量、常量和参数被定义的时间和位置当某个变量的作用域是一个给定的函数时,必须要记住:形参只有在函数被调用的时候才存在(编程实参)。一个函数可能会被调用多次:每次函数调用开始时,参数才是…

2026/10/18 9:56:38 阅读更多 →
数字序列11111的传播特性与文化内涵解析

数字序列11111的传播特性与文化内涵解析

1. 项目概述"11111"这个看似简单的数字序列,实际上蕴含着丰富的文化内涵和网络传播特性。作为一名长期观察网络文化现象的从业者,我发现这串数字在不同语境下展现出截然不同的意义和传播路径。从技术传播角度看,"11111"作…

2026/10/18 9:57:14 阅读更多 →
docker查看挂载目录Volume

docker查看挂载目录Volume

转: 使用docker inspect命令查看container的volume信息,按照书本上面敲,发现一直报错: 使用命令如下: sudo docker inspect --format "{{.Volumes}}" 676b04bec7c5错误信息为 Template parsing error: template: :1:2: …

2026/10/18 9:57:19 阅读更多 →

最新新闻

室内AI出图三周实战路线:从零基础到稳定交付效果图

室内AI出图三周实战路线:从零基础到稳定交付效果图

刚收到一位做室内设计的同行私信,开口就问:“室内AI出图要学多久?我看别人发的那种效果图太惊艳了,但自己连从哪下手都不知道。”我的回答很直接:三周,足够你从完全没碰过AI出图,到稳定输出客户…

2026/10/19 4:49:02 阅读更多 →
深度学习过拟合问题详解:Dropout、正则化与早停法实战指南

深度学习过拟合问题详解:Dropout、正则化与早停法实战指南

深度学习里有个特别常见的现象:训练集上的loss一路走低,看起来模型要成神了,结果验证集上的表现先是不动,然后掉头向上,甚至越跑越差。很多初学者第一次遇到这种情况时都会怀疑是自己代码写错了,其实不是&a…

2026/10/19 4:49:02 阅读更多 →
校园快递管理系统毕业设计:从数据库建模到SpringBoot+Vue全流程实战

校园快递管理系统毕业设计:从数据库建模到SpringBoot+Vue全流程实战

做了这么多年开发带毕业设计,我越来越觉得快递管理这类系统是被低估的选题。乍一听有点"烂大街",但真落地起来,它把权限控制、状态流转、二维码生成、消息通知、数据统计这些日常业务里绕不开的场景全串起来了,很适合用…

2026/10/19 4:49:02 阅读更多 →
大模型选型评测:MiniMax2.1、GLM-4.7、Qwen3-Coder、Doubao-Seed场景对比

大模型选型评测:MiniMax2.1、GLM-4.7、Qwen3-Coder、Doubao-Seed场景对比

直接上结论:现在大模型的竞争早就不是“谁参数多谁赢”的蛮力阶段了,而是进入了“精细化分工”的成熟期。我最近密集测试了MiniMax2.1、GLM-4.7、Qwen3-Coder、Doubao-Seed这四款各有来头的模型,感慨挺多的:它们都不是“全能的六边…

2026/10/19 4:49:02 阅读更多 →
从代码到实物:程序生成图案的激光切割与实体制作指南

从代码到实物:程序生成图案的激光切割与实体制作指南

做手作和写代码,这两件事在我这儿一直不太分家。前几年折腾过不少生成艺术的小项目,每次想从屏幕里的图案变成现实里能挂上墙、能拼装、能送人的实物,都要在绘图软件、脚本、激光切割参数、纸张克重之间来回倒腾,烦得不行。后来我…

2026/10/19 4:49:02 阅读更多 →
CentOS下BIND域名解析配置实战:从正向/反向解析到故障排查

CentOS下BIND域名解析配置实战:从正向/反向解析到故障排查

1. 项目概述:CentOS下的域名解析配置到底要做什么第五个年头做Linux运维,最常见的需求之一就是“帮我把域名解析配置上”。这句话在上线部署、内网服务联调、测试环境搭建里反复出现。尤其是新买了一台CentOS服务器,业务程序部署完了&#xf…

2026/10/19 4:48:02 阅读更多 →

日新闻

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

频率跟踪型PWM电源设计:臭氧发生器谐振点漂移与软开关实现

简介:本资源为电源技术方向的学术研究文档,聚焦介质阻挡放电型臭氧发生器电源的频率跟踪型PWM控制策略,面向电力电子、高压电源及臭氧应用领域的科研人员与工程技术人员。针对负载呈容性、等效电容随外加电压升高而增大、谐振频率随之漂移的难…

2026/10/19 0:00:47 阅读更多 →
Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

Vibe Coding 遇上 TaoToken:把开发者思维圣殿的灵感流接入统一 Key 通道

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 0:00:47 阅读更多 →
HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

HundredCV-Chat话题建模实战教程:利用4,871个内置话题标签构建主题分析系统

【免费下载链接】HundredCV-Chat 项目地址: https://ai.gitcode.com/hf_mirrors/Jax-dan/HundredCV-Chat 点击查看 免费下载 HundredCV-Chat 是一个由 100 位青年简历数据开发而来的中文多轮对话数据集,共包含 24,750 组日常闲聊对话和 4,871 个话题标签…

2026/10/19 0:00:47 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/19 1:30:52 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 2:54:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →