标签: BFS

12 篇文章

红与黑
Original Link 思想: BFS。 将搜索的起始点,即坐标为 @ 的点入队开始搜索。 利用偏移量数组遍历四个方向,将搜索到的点入队,记录 res ++。 取出队头,扩展队头搜索,直到清空队列即可。 代码: #include <bits/stdc++.h> using names…
乳草的入侵
Original Link 思想: BFS。 难点一,处理地图坐标和转换: 题目的地图坐标和二维数组坐标不照应; 则,第 a 排 b 列需要转换为 mp[n - b][a - 1]。 难点二,记录消耗的天数: 由于 BFS 搜索不能记录当前搜索的是第几层; 则,考虑在新搜索到的点额外增加参数 w,来…
数据结构课程设计
迷宫求解 1. 问题描述 (1)根据用户选择的游戏难度程度来动态生成迷宫地图,迷宫规模为三种,分别是10 10、50 50、100 * 100。 (2)每次游戏开始需要玩家选择一个难度,然后随机生成一个迷宫地图,需要保证改迷宫地图至少存在一个解。 (3)迷宫地图由0和1构成的n维方阵表示,0表示可走…
4219. 找倍数
原题链接 给定一个正整数 n,请你找到一个它的非零倍数 m。 要求 m 中只包含数字 0 或 1,并且总位数不超过 100 位。 输入格式 输入包含多组测试数据。 每组数据占一行,包含一个正整数 n。 当输入 n=0 时,表示输入结束。 输出格式 每组数据输出一行 m。 如果方案不唯一,则输出任意合…
D – Circumferences
D - Circumferences 原题链接 分析 考虑BFS搜索,将相交的园加入搜索队列 每次搜索判断终点是否位于圆上 核心在于判断两圆是否相交,及点是否位于圆上,设圆心距为d 相交:d*d <= (r1+r2)*(r1+r2) && d*d >= (r1-r2)*(…
1102. 移动骑士
1102. 移动骑士 原题链接 描述 给定一个 n∗n 的棋盘,以及一个开始位置和终点位置。 棋盘的横纵坐标范围都是 0∼n。 将一个国际象棋中的骑士放置在开始位置上,请问将它移动至终点位置至少需要走多少步。 一个骑士在棋盘上可行的移动方式如下图所示: 输入格式 第一行包含整数 T,表示共有 T 组…
NC14572 走出迷宫
NC14572 走出迷宫 原题链接 描述 小明现在在玩一个游戏,游戏来到了教学关卡,迷宫是一个N*M的矩阵。 小明的起点在地图中用“S”来表示,终点用“E”来表示,障碍物用“#”来表示,空地用“.”来表示。 障碍物不能通过。小明如果现在在点(x,y)处,那么下一步只能走到相邻的四个格子中的某一个:(…