当前位置: 首页 > article >正文

记录备战第十六届蓝桥杯的过程

1.学会了原来字符串也有比较方法,也就是字符串987 > 98 等等,可以解决拼最大数问题

题目链接:5.拼数 - 蓝桥云课 (lanqiao.cn)

2.今天又复习了一下bfs,感觉还是很不熟练,可能是那个过程我些许有点不熟悉,准备再看看bfs然后自己总结一下。

bfs做题步骤

1,定义好结构体,数组,标记数组

2,定义好方向数组

3,定义好出发点和结束点

4,在用结构体定义好起始点给队列,起始点的标记数组设置为1。

5,while循环,条件是队列不能为空

6,里面先写结束条件,结束条件就是当前走的点走到了结束点

7,然后for循环方向数组,重新定义当前的x,y,step,让step + 1。让当前的x,y的标记数组变成1。

8,然后弹出来。

标准的bfs模板代码如下

# include <iostream>
# include <queue>
using namespace std;
int a[110][110];
bool vis[110][110];
struct Type{
	int x;
	int y;
	int step;
};

int dx[] = {-1, 0, 1, 0};
int dy[] = {0, -1, 0, 1};

int main()
{
	int n, m, x1, x2, y1, y2;
	queue<Type> q1;
	cin>>n>>m;
	for(int i = 1; i <= n; i++)
	{
		for(int j = 1; j <= m; j++)
		{
			cin>>a[i][j];
		}
	}
	cin>>x1>>y1>>x2>>y2;
	Type start;
	start.x = x1;
	start.y = y1;
	start.step = 0;
	q1.push(start);
	vis[x1][x2] = 1;
	int flag = 0;
	while(!q1.empty())
	{
		int x = q1.front().x, y = q1.front().y;
		if(x == x2 && y == y2)
		{
			flag = 1;
			cout<<q1.front().step<<endl;
			break;
		}
		for(int k = 0; k < 4; k++)
		{
			int tx, ty;
			tx = q1.front().x + dx[k];
			ty = q1.front().y + dy[k];
			if(a[tx][ty] == 1 && vis[tx][ty] == 0)
			{
				Type temp;
				temp.x = tx;
				temp.y = ty;
				temp.step = q1.front().step + 1;
				q1.push(temp);
				vis[tx][ty] = 1;
			}
		}
		q1.pop();
	}
	if(flag == 0)
	{
		cout<<-1<<endl;
	}
	return 0;
}

题目链接:7.走迷宫 - 蓝桥云课 (lanqiao.cn)


http://www.kler.cn/a/519556.html

相关文章:

  • Qt中Widget及其子类的相对位置移动
  • Linux:文件与fd(未被打开的文件)
  • Excel分区间统计分析(等步长、不等步长、多维度)
  • 【Validator】字段验证器struct与多层级验证,go案例
  • 【云安全】云原生-Docker(五)容器逃逸之漏洞利用
  • 2025美赛数学建模C题:奥运金牌榜,完整论文代码模型目前已经更新
  • JVM堆空间
  • 图像处理之HSV颜色空间
  • 【第七天】零基础入门刷题Python-算法篇-数据结构与算法的介绍-一种常见的分治算法(持续更新)
  • Brightness Controller-源码记录
  • 独立开发者常见开发的应用有哪些
  • 正则表达式基础与应用
  • 第22篇:Python开发进阶:详解使用SQLAlchemy进行ORM数据库编程技术
  • OpenEuler学习笔记(八):安装OpenEuler
  • 14-6-3C++STL的list
  • 如何使用群晖NAS配置MySQL与phpMyAdmin远程管理
  • 商业航天更青睐哪些芯片
  • 网易Android开发面试题200道及参考答案 (下)
  • 长短期记忆网络LSTM
  • python爬虫入门(一) - requests库与re库,一个简单的爬虫程序
  • Kubernetes可视化界面
  • three.js+WebGL踩坑经验合集(3):THREE.Line的射线检测问题(不是阈值方面的,也不是难选中的问题)
  • IDEA2020同时使用SVN和GIT
  • DBO优化GRNN回归预测matlab
  • Altium Designer脚本开发不支持功能集锦
  • 接口(完)