CCF 201712-4 行车路线 目录思路DFS实现代码运行样例截图BFS实现代码目前我的程序提交只能得20分我没发现哪有问题看了好多博客下面提出的一些测试点也都能跑正确请发现问题的小伙伴跟我讨论讨论指明一下谢谢思路按深度优先搜索的思想用邻接表存储图然后遍历至尾结点n将一路上得到的疲劳度加入vector动态数组最后排序输出第一个。计算疲劳度思路通过temp[i]来记录到达 i 节点时的状态包括当前的总疲劳度、是否是经过小路到达i、如果是经过小路到达i那么连续经过了多少小路在遍历节点i的下一个节点时就把节点i的状态往下延伸从而计算得到下一个节点的状态直到遍历到n结束。DFS实现代码#includecstdio#includealgorithm#includevector#includecstringusing namespace std;constintMAXN510;typedef long long ll;struct Edge{ll d;int v,t;Edge(int _v,ll _d,int _t):v(_v),d(_d),t(_t){};};struct Node{ll allDis,allEdge;int flag;Node(){};Node(ll _allDis,ll _allEdge,int _flag):allDis(_allDis),allEdge(_allEdge),flag(_flag){};}temp[MAXN];vectorEdgeAdj[MAXN];vectorlldi;int n,m;voidDFS(int s){for(int i0;iAdj[s].size();i){int vAdj[s][i].v;ll dAdj[s][i].d;int tAdj[s][i].t;ll new_allEdge;if(t1){temp[v].allEdgetemp[s].allEdged;temp[v].allDistemp[s].allDis-temp[s].allEdge*temp[s].allEdgetemp[v].allEdge*temp[v].allEdge;temp[v].flag1;}else{temp[v].allDistemp[s].allDisd;temp[v].flag0;temp[v].allEdge0;}if(vn){di.push_back(temp[v].allDis);continue;}DFS(v);}}intmain(){int t,a,b;ll c;scanf(%d%d,n,m);for(int i0;im;i){scanf(%d%d%d%lld,t,a,b,c);Adj[a].push_back(Edge(b,c,t));}temp[1].allDis0;temp[1].allEdge0;temp[1].flag0;DFS(1);sort(di.begin(),di.end());printf(%lld,di.front());return0;}运行样例截图这是我把运行样例的每一条路径所消耗的疲劳度都打印出来了。按理输出第一个就行BFS实现代码#includecstdio#includealgorithm#includevector#includecstringusing namespace std;constintMAXN510;typedef long long ll;struct Edge{ll d;int v,t;Edge(int _v,ll _d,int _t):v(_v),d(_d),t(_t){};};struct Node{ll allDis,allEdge;int flag;Node(){};Node(ll _allDis,ll _allEdge,int _flag):allDis(_allDis),allEdge(_allEdge),flag(_flag){};};vectorNodedp[3];vectorEdgeAdj[MAXN];vectorEdgeAdj1[MAXN];vectorlldi;int n,m;ll minDis1e18;int tl;voidBFS(int s){int t21-tl;if(Adj1[s].size()0s!n)return;for(int j0;jdp[tl].size();j){Node ansdp[tl][j],temp;for(int i0;iAdj[s].size();i){int vAdj[s][i].v;ll dAdj[s][i].d;int tAdj[s][i].t;if(t1){temp.allEdgeans.allEdged;temp.allDisans.allDis-ans.allEdge*ans.allEdgetemp.allEdge*temp.allEdge;temp.flag1;}else{temp.allDisans.allDisd;temp.flag0;temp.allEdge0;}if(v1){di.push_back(temp.allDis);continue;}elsedp[t2].push_back(temp);}}dp[tl].clear();tlt2;}intmain(){int t,a,b;ll c;scanf(%d%d,n,m);for(int i0;im;i){scanf(%d%d%d%lld,t,a,b,c);Adj[b].push_back(Edge(a,c,t));Adj1[a].push_back(Edge(b,c,t));}dp[tl].push_back(Node(0,0,0));for(int in;i1;i--){BFS(i);}sort(di.begin(),di.end());printf(%lld,di.front());return0;}

相关新闻

最新新闻

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现

SerenityOS 命令行选项解析指南:getopt 与 getopt_long 用法、返回值与底层实现 【免费下载链接】serenity The Serenity Operating System 🐞 项目地址: https://gitcode.com/GitHub_Trending/se/serenity 导读 本文以 getopt(3) 手册 为核心&a…

2026/9/23 4:54:42
轻量服务器还是ECS?大促云服务器选购与避坑实战指南

轻量服务器还是ECS?大促云服务器选购与避坑实战指南

每年大促节点,群里永远有人在问同一个问题:“38元的轻量服务器到底怎么抢?为什么我每次点进去都是已售罄?68元直购和99元的ECS我到底选哪个?”作为一个常年帮团队和自己采购云服务器的老用户,我太清楚这种纠…

2026/9/23 8:01:55
为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南

为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南

为 AI 代理的 Review 动作编写 Cedar 审批门控策略:review-agent-governance 策略编写实战指南 【免费下载链接】agents Multi-harness agentic plugin marketplace for Claude Code, Codex, Cursor, OpenCode, GitHub Copilot, and Google Antigravity 项目地址:…

2026/9/23 8:02:11
PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署

PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署

PaddleOCR 手写数学公式识别算法 CAN 实战指南:Counting-Aware Network 训练、评估与推理部署 【免费下载链接】PaddleOCR Turn any PDF or image document into structured data for your AI. A powerful, lightweight OCR toolkit that bridges the gap between i…

2026/9/23 8:01:38
Spring源码解析:构造器注入的类型转换与候选匹配机制

Spring源码解析:构造器注入的类型转换与候选匹配机制

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

2026/9/23 8:01:21
openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由

openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由

openai-agents-python 多模型接入指南:深入解析 AnyLLMModel 适配层与 any-llm 路由 【免费下载链接】openai-agents-python A lightweight, powerful framework for multi-agent workflows 项目地址: https://gitcode.com/GitHub_Trending/op/openai-agents-pyth…

2026/9/23 8:02:28

日新闻

周新闻