C++课后习题训练记录Day146
1.练习项目 问题描述”大鱼吃小鱼小鱼吃虾米。“但是小鱼也有变成大鱼的梦想小鱼住在一个有 n 个区域的海底世界区域编号从 1 到 n海底世界中有 m 条单向通道每条通道连接了其中两个区域。区域 1 有海底世界中唯一的虾米群。区域 2 到 n 中有 k 个区域可以作为出生点即小鱼可以任意选择其中一个区域作为起点它将从该起点出发游到区域 1从而吃到虾米群变成大鱼。现在小鱼希望选择某个出生点使得它从该出生点出发到吃到虾米群的总距离最短。请你帮帮它。输入格式第一行一个整数 t表示测试案例的个数。1≤t≤10对于每个测试案例第一行三个整数 n,m,k表示海底世界的区域个数、单向通道条数、出生点个数。2≤n≤1041≤m≤1041≤k≤n−1​第二行k 个整数表示出生点的编号 vi​。2≤vi≤n接下来 m 行每行三个整数 a,b,c表示存在一条从区域 a 到区域 b 的长度为 c 的单向通道。1≤a,b≤n1≤c≤105输出格式共 t 行每行一个整数表示吃到虾米的最短距离若无论取哪个出生点都无法吃到虾米则为 −1。2.选择课程在蓝桥云课中选择题库选择题号19849并开始练习。3.开始练习1虚拟源点 #includebits/stdc.husing namespace std;using ll long long;const ll N 1e410;const ll inf 2e18;struct Edge{ll x,w;bool operator (const Edge u)const{return (w u.w ? x u.x:w u.w);}};vectorEdgeg[N];ll d[N],n,m,k;void dijkstra(){//初始化for(int i0;in;i)d[i]inf;//变量priority_queueEdgepq;bitsetNvis;pq.push({0,d[0]0});//循环pqwhile(pq.size()){//拓展松弛int xpq.top().x;pq.pop();if(vis[x])continue;vis[x]true;for(const autot:g[x]){int yt.x;int wt.w;if(d[x]wd[y]){//说明st ... y这条边可以被st ... x y松弛掉pq.push({y,d[y]d[x]w});}}}}int main(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int t;cint;while(t--){cinnmk;for(int i0;in;i)g[i].clear();for(int i1;ik;i){int x;cinx;g[0].push_back({x,0});}for(int i1;im;i){ll x,y,w;cinxyw;g[x].push_back({y,w});}dijkstra();if(d[1]inf)cout-1\n;else coutd[1]\n;}return 0;}2反图#includebits/stdc.husing namespace std;using ll long long;const ll N 1e410;const ll inf 2e18;struct Edge{ll x,w;bool operator (const Edge u)const{return (w u.w ? x u.x:w u.w);}};vectorEdgeg[N];ll d[N],n,m,k;void dijkstra(){//初始化for(int i1;in;i)d[i]inf;//变量priority_queueEdgepq;bitsetNvis;pq.push({1,d[1]0});//循环pqwhile(pq.size()){//拓展松弛int xpq.top().x;pq.pop();if(vis[x])continue;vis[x]true;for(const autot:g[x]){int yt.x;int wt.w;if(d[x]wd[y]){//说明st ... y这条边可以被st ... x y松弛掉pq.push({y,d[y]d[x]w});}}}}int main(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int t;cint;while(t--){cinnmk;for(int i1;in;i)g[i].clear();vectorintv;for(int i1;ik;i){int x;cinx;v.push_back(x);}for(int i1;im;i){ll x,y,w;cinxyw;g[y].push_back({x,w});}dijkstra();ll ansinf;for(const autox:v)ansmin(ans,d[x]);if(ansinf)cout-1\n;else coutans\n;}return 0;}2检验结果对此代码进行检验检验后无报错提交此代码判题结果为正确100分。3练习心得注意每段代码末尾的分号是否存在 如不存在则需即使补充输入法 是否切换 为英语模式语法是否错误。

相关新闻

java+前端学习笔记

java+前端学习笔记

部分内容由豆包生成 📚 笔记总览 本笔记整理了Java和前端基础的学习内容,涵盖核心概念、原理和实践要点。 ☕ Java 学习笔记 一、Java基础 1. 数组 数组的特点 连续的内存空间 引用数据类型 长度在创建时确定,后续不能改变大小 根据类…

2026/7/1 1:01:51阅读更多 →
5分钟掌握Windows风扇控制:FanControl终极免费散热解决方案

5分钟掌握Windows风扇控制:FanControl终极免费散热解决方案

5分钟掌握Windows风扇控制:FanControl终极免费散热解决方案 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trendi…

2026/7/1 1:01:51阅读更多 →
LangChain + RAG 实战(三):构建第一个 RAG Chain

LangChain + RAG 实战(三):构建第一个 RAG Chain

创作者: Yardon | GitHub: github.com/YardonYan | 版本: v1.0 | LCEL:LangChain 的链式语法 LCEL(LangChain Expression Language)让链式调用变得像搭积木: from langchain.prompts im…

2026/7/1 1:01:51阅读更多 →
2026 在上海如何找一家专业又靠谱的小程序定制开发公司

2026 在上海如何找一家专业又靠谱的小程序定制开发公司

现在上海做线下门店、小型商贸、本地服务、初创线上平台的老板基本都有做小程序的想法,不管是门店点餐、线上商城、预约服务还是商户入驻平台,小程序都是低成本拉私域、做线上成交的工具,但很多人第一次接触定制开发,很容易踩各种…

2026/7/1 2:06:57阅读更多 →
北京心商科技发布GEO优化产品 助力企业合规营销

北京心商科技发布GEO优化产品 助力企业合规营销

2026年6月30日,北京心商科技有限公司在京正式发布新一代生成式引擎优化(GEO)产品。该产品经过长达8个月的内部测试,已成功服务公牛集团、广联达、齐鲁制药等多家行业头部企业,技术内核则源自烟台创想企服数字科技研发的…

2026/7/1 2:06:57阅读更多 →
AI Agent 新概念: Loop Engineering 是什么? 一篇文章讲清楚定义、组成、应用场景

AI Agent 新概念: Loop Engineering 是什么? 一篇文章讲清楚定义、组成、应用场景

最近 AI 圈有个新词挺火,叫 Loop Engineering,也就是 “循环工程”,本篇文章来讲一讲,带你搞清到底什么是Loop Engineering。 起因是两句话,Claude Code 的负责人 Boris Cherny 说,他已经不怎么给 Claude …

2026/7/1 2:06:57阅读更多 →
5个技巧让Windows多显示器亮度调节更高效:Monitorian完全指南

5个技巧让Windows多显示器亮度调节更高效:Monitorian完全指南

5个技巧让Windows多显示器亮度调节更高效:Monitorian完全指南 【免费下载链接】Monitorian A Windows desktop tool to adjust the brightness of multiple monitors with ease 项目地址: https://gitcode.com/gh_mirrors/mo/Monitorian Monitorian是一款专为…

2026/7/1 2:06:57阅读更多 →
Free-For-Dev 资源实战:零成本构建高效开发工作流

Free-For-Dev 资源实战:零成本构建高效开发工作流

很多开发者在启动新项目时,往往被“基础设施成本”劝退。租服务器、买域名、配置数据库、搭建监控,这一套流程走下来,还没写几行核心代码,预算就已经烧掉大半。对于初创团队或个人开发者而言,这种重资产启动模式不仅资…

2026/7/1 2:06:57阅读更多 →
当 AI Agent 学会长出免疫系统:从城堡防御到细胞防御的范式转换

当 AI Agent 学会长出免疫系统:从城堡防御到细胞防御的范式转换

一个被忽视的事实:你的 Agent 没有免疫系统 想象你刚部署了一个很能干的 AI Agent。它能读写文件、调用 API、管理日程、协调其他 Agent。你给它配了最好的基座模型(Claude Opus 4.6),精心写了 system prompt,做了 RLHF 对齐,加了沙箱和防火墙。 上线三天,有人往它的记…

2026/7/1 2:01:57阅读更多 →
AI Coding 六个月真实ROI账本:产品经理的血泪教训,研发的冷静忠告

AI Coding 六个月真实ROI账本:产品经理的血泪教训,研发的冷静忠告

6个月前的2025年12月,Boris Cherny 公开宣布自己卸载了 IDE。一时间,Vibe Coding 成了全行业最热的话题。6个月后,当我们回过头来拉一份真实账本,发现事情远没有"一句话生成一个App"那么浪漫。本文从产品经理和研发两个…

2026/6/30 4:03:30阅读更多 →
审计来了,数据权限全开——审计走了,怎么确保权限全部关掉?

审计来了,数据权限全开——审计走了,怎么确保权限全部关掉?

引言:审计结束三个月了,审计员的权限还没关某城商行每年按照监管要求开展至少一次数据安全审计。审计期间,内审部门需要抽样检查各类业务数据——交易流水、客户信息、员工操作日志、权限配置记录。这些数据分布在不同系统中,审计…

2026/6/30 4:36:27阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/1 0:01:44阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/1 0:01:44阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/1 0:01:44阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/1 0:01:44阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/1 0:01:44阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/1 0:01:44阅读更多 →