发布时间:2026/7/28 17:56:13
OpenJ_Bailian - 4115  鸣人和佐助(BFS特殊判重) 佐助被大蛇丸诱骗走了鸣人在多少时间内能追上他呢已知一张地图以二维矩阵的形式表示以及佐助和鸣人的位置。地图上的每个位置都可以走到只不过有些位置上有大蛇丸的手下需要先打败大蛇丸的手下才能到这些位置。鸣人有一定数量的查克拉每一个单位的查克拉可以打败一个大蛇丸的手下。假设鸣人可以往上下左右四个方向移动每移动一个距离需要花费1个单位时间打败大蛇丸的手下不需要时间。如果鸣人查克拉消耗完了则只可以走到没有大蛇丸手下的位置不可以再移动到有大蛇丸手下的位置。佐助在此期间不移动大蛇丸的手下也不移动。请问鸣人要追上佐助最少需要花费多少时间Input输入的第一行包含三个整数MNT。代表M行N列的地图和鸣人初始的查克拉数量T。0 M,N 2000 ≤ T 10后面是M行N列的地图其中代表鸣人代表佐助。*代表通路#代表大蛇丸的手下。Output输出包含一个整数R代表鸣人追上佐助最少需要花费的时间。如果鸣人无法追上佐助则输出-1。Sample Input样例输入1 4 4 1 ### **## ### **** 样例输入2 4 4 2 ### **## ### ****Sample Output样例输出1 6 样例输出2 4此题需要特殊判重判重的意义在于不再走重复的路防止进入死循环简单判重只用于到达某位置只是先后次序不同其他状态相同。而此题由于先后到达某点的路径不同查克拉的数量可能也会有所不同甚至会影响是否能到达终点因此不能简单的判重。如果后面到达时的查克拉数量大于之前到达的量则可以加入队列以免走了最前面的路消耗完查克拉最后到达不了终点#includecstdio #includequeue #includecstring using namespace std; char a[205][205]; int yao[205][205]; //记录之前到达该位置最多的查克拉数 int d[4][2]{0,1,1,0,0,-1,-1,0}; int n,m,T,ans; struct node { int y,x,o,t; node(int yy,int xx,int oo,int tt):y(yy),x(xx),o(oo),t(tt){} //方便直接调用 }; int bfs(int i,int j) { memset(yao,-1,sizeof(yao)); //最大药量初始化为-1在现有查克拉数为0时也可以通过‘*’‘’(除了‘#’)因为后面要判断现有查克拉数要大于之前位置的最大药量才能加入队列 queuenode q; q.push(node(i,j,T,0)); while(!q.empty()) { node nowq.front();q.pop(); if(a[now.y][now.x]) { return now.t; } for(int i0;i4;i) { int snow.yd[i][0]; int hnow.xd[i][1]; if(s0||sn||h0||hm) continue; if(a[s][h]#yao[s][h]now.o-1) //yao[s][h]next.o { q.push(node(s,h,now.o-1,now.t1)); yao[s][h]now.o-1; } else if(a[s][h]!#yao[s][h]now.o) { q.push(node(s,h,now.o,now.t1)); yao[s][h]now.o; } } } return -1; } int main() { scanf(%d%d%d,n,m,T); for(int i0;in;i) { scanf(%s,a[i]); } for(int i0;in;i) { for(int j0;jm;j) { if(a[i][j]) { printf(%d,bfs(i,j)); return 0; } } } return 0; }

相关新闻

2026/7/28 17:56:13

【单片机毕业设计推荐】基于 STM32 的智能衣柜环境监测与远程控制系统设计,基于 STM32 的多功能智能储物柜物联网监测装置设计(012004)

文章目录20 个相关毕业设计备选题目项目研究背景摘要总体方案核心功能技术路线项目演示关于我们项目案例源码获取温馨提示:本人主页置顶文章(点我)有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)有 CSDN 平台官…

2026/7/28 17:56:13

【单片机毕业设计推荐】 基于 51/STM32 单片机的智能感应台灯控制系统设计与实现,基于 51/STM32 单片机的蓝牙可控人体感应调光台灯设计(011904)

文章目录20 个相关毕业设计备选题目项目研究背景摘要总体方案核心功能核心功能 1:环境数据采集与多终端数据展示核心功能 2:自动模式智能照明控制核心功能 3:手动模式本地按键操控核心功能 4:蓝牙 APP 状态信息接收展示核心功能 5…

2026/7/28 17:56:13

python 类中的递归函数使用

n叉数的前序遍历class Solution:def preorder(self, root: Node) -> List[int]:order[]if root!None:order.append(root.val)for i in range(len(root.children)):noderoot.children[i]orderself.preorder(node)return order类中的函数递归调用,要使用self.preor…

2026/7/28 19:01:49

malloc

a; int b; }*a; //之前这段代码只是定义一个结构体指针,并没有初始化, 有可能指向NULL,也有可能指向其它未知地址, 这时直接操作指针就是操作指针所指向的内存,这块内存有只能是系统区的,有可能在常量区的&…

2026/7/28 19:01:49

G1 GC并行线程调优:从日志诊断到性能提升

GC并行线程的作用 在G1 GC的垃圾回收过程中,Stop-the-World(STW)暂停阶段(如Young GC的Evacuation Pause)和并发标记阶段都需要多线程来加速。G1 GC根据系统CPU核心数自动决定并行工作线程数,并通过GC日志中的初始化信息暴露这些配置。例如,启动日志中会输出: [0.065…

2026/7/28 19:01:49

微信服务号与开发者账号绑定全流程及常见问题解析

1. 微信服务号与开发者账号绑定全流程解析 作为微信生态开发的基础环节,服务号与开发者账号的绑定操作看似简单却暗藏多个关键控制点。我在帮企业客户处理微信整合项目时,发现超过60%的接口调用失败案例源于绑定环节的配置疏漏。下面将结合官方文档要求…

2026/7/28 19:01:49

SpringBoot+Vue3前后端分离课程管理系统:从零搭建企业级全栈项目

如果你正在寻找一个能跑通、能学习、能直接用于毕业设计或课程实践的完整项目,那么基于 SpringBoot Vue3 前后端分离的课程管理系统,很可能就是你需要的那个“样板工程”。但问题来了:网上开源项目那么多,为什么这个组合值得你投…

2026/7/28 19:01:49

Zookeeper单机部署单服务过程(非docker方式)

zk这东西太优秀了,分布式锁、分布通知/协调(配置管理)、分布式队列、集群管理、数据发布与订阅等场景,最佳中间件,虽然zk有很多强大的特性,但一般公司的项目不会用得太多,集群管理、分布式锁应该…

2026/7/28 18:56:49

从URL输入到页面渲染:浏览器背后的网络协议与优化策略

1. 从输入网址到页面加载的全过程解析当你在浏览器地址栏输入"www.example.com"并按下回车时,这台看似简单的操作背后隐藏着一系列精密的网络协议交互和系统协作。整个过程就像一场精心编排的交响乐,每个环节都扮演着不可或缺的角色。以访问&q…

2026/7/28 13:41:25

PDF合并与动态水印的工程化方案:2026国内免费工具实测对比

一、背景与测试方案 在实际项目交付中,PDF文件合并与版权保护水印的叠加是一个高频但容易被低估的技术需求。典型的处理链路涉及:多源PDF的文件流合并、页面级水印渲染(含透明度混合与图层叠加)、输出文件体积控制。看似简单的操作…

2026/7/28 0:03:34

学术论文研究创新点梳理与核心价值提炼指南

本科毕业论文是大学四年最大的坎。开题报告憋一周写不出三页,找文献翻遍十几个网站还是缺关键资料,写正文卡壳半天憋不出一句话,降重改到凌晨三点结果逻辑全乱,答辩前一天PPT还没做完。别慌,亲测这四个工具能让你少熬半…

2026/7/28 0:03:34

开发商售楼处数字化升级怎么做?

房企的数字化转型投入正在快速增长,据行业数据显示,2025年房企数字化投入规模已突破800亿元,年复合增长率达35%。售楼处的数字化升级不是单一环节的改造,而是从“获客-展示-成交-服务”全链路的系统升级。数字化升级四步法第一步&…

2026/7/28 0:03:34

模型不再值钱之后,AI 编程工具在争什么

2026 年 7 月,AI 编程工具赛道发生了一个标志性转折:模型本身不再值钱了。当 Kimi K3 开源模型在编程基准上击败 GPT 和 Claude,当 GitHub Copilot 第一次把开源模型纳入选择器,当 OpenAI 把 Codex 并入 ChatGPT 做成三合一超级应…

2026/7/28 4:38:09

3个高效策略:快速掌握Axure中文界面配置

3个高效策略:快速掌握Axure中文界面配置 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文界面感…