USACO历年白银组真题解析 | 2005年2月

news/2026/1/22 16:59:44/文章来源:https://www.cnblogs.com/guolianggsta/p/19518196

​欢迎大家订阅我的专栏:算法题解:C++与Python实现!
本专栏旨在帮助大家从基础到进阶 ,逐步提升编程能力,助力信息学竞赛备战!

专栏特色
1.经典算法练习:根据信息学竞赛大纲,精心挑选经典算法题目,提供清晰的代码实现与详细指导,帮助您夯实算法基础。
2.系统化学习路径:按照算法类别和难度分级,从基础到进阶,循序渐进,帮助您全面提升编程能力与算法思维。

适合人群:

  • 准备参加蓝桥杯、GESP、CSP-J、CSP-S等信息学竞赛的学生
  • 希望系统学习C++/Python编程的初学者
  • 想要提升算法与编程能力的编程爱好者

附上汇总贴:USACO历年白银组真题解析 | 汇总-CSDN博客


P1673 Part Acquisition

【题目来源】

洛谷:[P1673 USACO05FEB] Part Acquisition S - 洛谷

【题目描述】

奶牛们接到了寻找一种新型挤奶机的任务,为此它们准备依次经过 \(N(1\le N\le 5\times 10^4)\) 颗行星,在行星上进行交易。为了方便,奶牛们已经给可能出现的 \(K(1\le K\le 10^3)\) 种货物进行了由 \(1\)\(K\) 的标号。由于这些行星都不是十分发达。没有流通的货币,所以在每个市场里都只能用固定的一种货物去换取另一种货物。奶牛们带着一种上好的饲料从地球出发,希望在使用的物品的种类数量最少的情况下,最终得到所需要的机器。饲料的标号为 \(1\),所需要的机器的标号为 \(K\)。如果任务无法完成,输出 \(-1\)

【输入】

\(1\) 行是两个数字 \(N\)\(K\)

\(2\)\(N+1\) 行,每行是两个数字 \(A_i\)\(B_i\),表示第 \(i\) 颗行星为得到 \(A_i\) 愿意提供 \(B_i\)

【输出】

输出最少经手物品数。

【输入样例】

6 5
1 3
3 2
2 3
3 1
2 5
5 4

【输出样例】

4

【解题思路】

2

【算法标签】

《洛谷 P1673 Part Acquisition》 #最短路# #USACO# #2005#

【代码详解】

#include <bits/stdc++.h>
using namespace std;// 定义常量
const int N = 50005;       // 最大节点数
const int M = N * 2;       // 最大边数,无向图需要乘以2int n;                     // 节点总数
int k;                     // 目标节点
int h[N];                  // 邻接表头数组
int e[M];                  // 边数组,存储边的终点
int ne[M];                 // 邻接表next数组
int idx;                   // 边的索引计数器
int dist[N];               // 距离数组,存储从节点1到各节点的最短距离// 添加边的函数
void add(int a, int b)
{e[idx] = b;           // 设置边的终点ne[idx] = h[a];       // 新边指向原链表的头h[a] = idx++;         // 更新链表头,并递增索引
}// 广度优先搜索函数,从节点1开始搜索
void bfs()
{queue<int> q;         // 创建队列用于BFSq.push(1);            // 从节点1开始搜索// 初始化距离数组,将所有距离设为无穷大for (int i = 1; i <= n; i++){dist[i] = 1e9;    // 1e9表示无穷大}dist[1] = 1;          // 节点1到自身的距离为1(这里从1开始计数,不是0)// BFS主循环while (!q.empty()){int t = q.front();  // 取出队首节点q.pop();             // 弹出队首节点// 遍历节点t的所有邻居for (int i = h[t]; i != -1; i = ne[i]){int j = e[i];   // 邻居节点// 如果找到更短的路径if (dist[j] > dist[t] + 1){dist[j] = dist[t] + 1;  // 更新距离q.push(j);              // 将邻居节点加入队列}}}
}int main()
{// 初始化邻接表头数组memset(h, -1, sizeof(h));// 读入节点数和目标节点cin >> n >> k;// 读入n-1条边(因为树有n-1条边)for (int i = 1; i <= n; i++){int u, v;cin >> u >> v;add(u, v);         // 添加边u->v// 注意:这里似乎缺少了add(v, u),应该是无向图的输入}// 执行BFS搜索bfs();// 输出结果if (dist[k] == 1e9)    // 如果目标节点不可达{cout << -1 << endl;}else                   // 如果可达{cout << dist[k] << endl;}return 0;
}

【运行结果】

6 5
1 3
3 2
2 3
3 1
2 5
5 4
4

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1201015.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2026英语雅思培训机构辅导机构怎么选?深度解析行业现状+优质机构口碑榜单与家长择校指南

对于计划让孩子备考雅思、冲刺海外院校的家长来说,挑选合适的英语雅思培训机构辅导机构始终充满困惑。不知道如何判断机构的课程是否适配孩子的雅思基础与留学目标,担心师资不专业、教学体系不完善,又怕选错机构浪费…

JDK21-虚拟线程(原理)

一、先给结论 虚拟线程不是不运行在 OS 线程上&#xff0c;而是&#xff1a; 只在“真正需要 CPU 时”才短暂占用 OS 线程。 在 IO 等待时&#xff0c;JVM 会把它“卸载”下来。 二、为什么传统线程一定占用 OS 线程&#xff1f; 1️⃣ Java 线程 OS 线程&#xff08;1:1&am…

2026年上海全屋定制衣柜公司TOP品牌厂家排行榜:全屋定制行业深度评测与排名、行业问题与选择指南

基于2026行业动态及市场研究报告,当前企业在需求全屋定制衣柜过程中,普遍面临信息杂乱、适配困难、质量参差等问题。本文旨在通过综合企业综合实力、技术能力、服务网络、市场口碑等维度进行严格筛选,为读者提供可靠…

2026英语雅思培训学校机构辅导机构推荐哪家好?家长择校避坑指南+深度解析

很多计划送孩子留学的家长,在选择雅思培训学校机构辅导机构时都会陷入核心困惑:不知道该优先考量师资实力还是课程体系,担心选到不适配孩子基础的机构浪费时间与金钱,又纠结机构能否衔接留学申请事宜,面对市面上五…

rust maturin 在调用 cargo 时,无法联网拉取 crates.io 索引,因为系统被代理到 127.0.0.1:10809,而本地并没有可用的代理服务

这个报错的核心是&#xff1a; 「maturin 在调用 cargo 时&#xff0c;无法联网拉取 crates.io 索引&#xff0c;因为系统被代理到 127.0.0.1:10809&#xff0c;而本地并没有可用的代理服务。」 也就是说&#xff0c;Cargo 的 HTTP 代理设置指向了一个不存在的本地代理端口&am…

AI Agent架构全解析:从感知到行动,小白也能上手的智能体开发实战,错过再等十年!

为深入贯彻落实工业和信息化部《工业互联网和人工智能融合赋能行动方案》&#xff0c;加快推动工业互联网与人工智能在更广范围、更深程度、更高水平上实现融合赋能&#xff0c;中国工业互联网研究院依托工业互联网大数据技术工信部重点实验室工业智算研究中心&#xff0c;联合…

JDK21-虚拟线程(实战)

背景&#xff1a; 系统需要在极短的时间(短时间可以减少实际余额偏差)拉取多个第三方平台的账户余额&#xff0c;并保存到数据库。 每个平台都是 HTTP IO 调用 数据解析 DB 写入&#xff0c;典型的 IO 密集型任务。 一、业务场景简介(将具体的平台脱敏了,是真实数据) 系统涉…

【AI黑科技】颠覆传统RAG!PageIndex让AI拥有“推理脑“,金融文档分析准确率98.7%!

相似度 ≠ 相关性&#xff1a;颠覆传统 RAG&#xff0c;PageIndex 让 AI 学会"推理式检索" 在金融文档分析基准 FinanceBench 上达到 98.7% 准确率&#xff0c;超越所有向量检索方案 引言 当你向 AI 提出一个关于 50 页财报的复杂问题时&#xff0c;传统的 RAG&…

大模型Agent Skills配置指南:让AI助手从“智障“变“神助攻“,附销售数据分析实战代码

文章详解大模型Agent Skills配置原则&#xff1a;技能要精准而非空泛、要分层管理而非堆砌、要有逻辑关联而非孤立。通过销售数据分析助手实战案例&#xff0c;展示具体技能和工作流设计方法&#xff0c;提供配置技巧与常见问题解决方案。强调技能配置是持续迭代过程&#xff0…

【学术干货免费领】学术会议海报 | 学术会议必备 | 科研展示 | 科研海报 | 国际学术海报 | 会议参会 | 科研成果展示 | 海报展示 | 90+学术Poster模板0元打包下载,速领!

一句话&#xff1a;只要你的研究需要“被看见”&#xff0c;模板就能让你“被看懂、被记住、被引用”。硕博研究生开题/中期/毕业答辩、学术年会、国内外会议 Poster Session30 min 出图&#xff0c;导师秒过&#xff0c;奖学金加分青年教师/博士后职称评审、基金前期成果墙、校…

震惊!90%的RAG项目都做错了!RAG不是“加模块“,而是构建完整的AI判断体系

RAG不是"加模块"&#xff0c;而是一整套数据与判断体系 提到RAG&#xff08;Retrieval-Augmented Generation&#xff0c;检索增强生成&#xff09;&#xff0c;很多人第一反应可能是&#xff1a;"这不就是给大模型多喂点资料&#xff0c;让它照着说吗&#xf…

【广州南方学院主办 | 斯普林格出版 | 高录用、接收综述文章 | 征稿主题广:人工智能、虚拟现实、艺术、设计类稿件均可接收】第二届人工智能赋能数字创意设计国际学术会议(AIEDCD 2026)

征稿主题广&#xff1a;人工智能、虚拟现实、艺术、设计类稿件均可接收 | 高录用、接收综述文章 第二届人工智能赋能数字创意设计国际学术会议(AIEDCD 2026) The 2nd International Conference on AI - Enabled Digital Creative Design 大会时间&#xff1a;2026年3月27-29…

【大模型实战】Agent开发不再迷茫:从推理到运行,构建能“活下去“的系统

一、什么是一个真正的 Agent 如果对“Agent”缺乏一个在工程上成立的定义&#xff0c;那么后续所有关于模型、框架与实现细节的讨论&#xff0c;都会不可避免地失焦&#xff0c;最终退化为&#xff1a; 模型切换经验SDK 使用说明Demo 级实现技巧 而这些&#xff0c;都无法支…

【AI炸裂】大模型Agent学习指南:131篇顶会论文+321个实战案例+代码,小白也能弯道超车!

当前正是Agent发展的黄金时期&#xff0c;对于想要在该领域发论文的同学来说&#xff0c;掌握其高效的学习路径、深入了解Agent的核心系统形态/技术融合创新至关重要。 本文根据以上三维视角&#xff0c;整理了131篇前沿论文&#xff0c;包含当前顶会热点“多智能体”、“大模…

【大数据毕设全套源码+文档】基于Hadoop和Hive的济南旅游景区数据的分析与可视化的设计与实现(丰富项目+远程调试+讲解+定制)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

移动端测试如何学,超详细的APP测试攻略送上

前言 随着手机应用市场发展的逐渐成熟&#xff0c;手机APP已经渗透到人们的吃穿住行生活&#xff0c;比如手机支付APP、通讯APP、各大应用软件等&#xff0c;关于手机APP安全性能的重要性不言而喻。 鉴于此&#xff0c;做好手机APP测试对于软件开发方把控产品质量有着重要意义…

【AI革命】马斯克X算法大揭秘:人工规则已死,RAG接管一切!程序员必学的顶级架构!

就在最近&#xff0c;马斯克的 xAI 团队更新了 x-algorithm 仓库。这份代码宣告了一个时代的终结&#xff1a;人工规则已死&#xff0c;AI 接管一切。 通过对核心组件 Phoenix 的源码拆解&#xff0c;我发现了一个令人震惊的技术真相&#xff1a;驱动 X 全球亿万流量的底层逻辑…

【大数据毕设源码分享】django基于大数据的共享单车数据分析与可视化的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

AI Agent‘翻车‘别慌!Skills来救场,小白也能当大神!

最近一段时间&#xff0c;如果你关注 Agent 相关的产品和讨论&#xff0c;大概率会注意到一个变化&#xff1a;多款主流工具/平台都相继发布了对 Skills 的支持。 比如&#xff1a;Cursor 的 beta 版里已经开始支持 Skills&#xff0c;Coze 这两天也刚发布了对 Skills 的支持&…

TGF-β 信号通路核心干货解析

TGF-β 信号通路是进化上保守的分泌型多肽介导的信号转导系统&#xff0c;核心参与早期胚胎发育、组织器官形成、免疫监督、组织修复及成体稳态维持&#xff0c;其异常激活或抑制与多种疾病密切相关&#xff0c;是发育生物学、肿瘤学、免疫学分领域的重点研究方向。 一、TGF-β…