设计一个网站页面需要多少钱/搜索引擎营销实训报告

设计一个网站页面需要多少钱,搜索引擎营销实训报告,广告留电话号的网站,住房和城乡建设部网站电话1. 题目 在一个 2 x 3 的板上(board)有 5 块砖瓦,用数字 1~5 来表示, 以及一块空缺用 0 来表示. 一次移动定义为选择 0 与一个相邻的数字(上下左右)进行交换. 最终当板 board 的结果是 [[1,2,3],[4,5,0]] 谜板被解开…

1. 题目

在一个 2 x 3 的板上(board)有 5 块砖瓦,用数字 1~5 来表示, 以及一块空缺用 0 来表示.

一次移动定义为选择 0 与一个相邻的数字(上下左右)进行交换.

最终当板 board 的结果是 [[1,2,3],[4,5,0]] 谜板被解开。

给出一个谜板的初始状态,返回最少可以通过多少次移动解开谜板,如果不能解开谜板,则返回 -1 。

示例:
输入:board = [[1,2,3],[4,0,5]]
输出:1
解释:交换 051 步完成输入:board = [[1,2,3],[5,4,0]]
输出:-1
解释:没有办法完成谜板输入:board = [[4,1,2],[5,0,3]]
输出:5
解释:
最少完成谜板的最少移动次数是 5 ,
一种移动路径:
尚未移动: [[4,1,2],[5,0,3]]
移动 1: [[4,1,2],[0,5,3]]
移动 2: [[0,1,2],[4,5,3]]
移动 3: [[1,0,2],[4,5,3]]
移动 4: [[1,2,0],[4,5,3]]
移动 5: [[1,2,3],[4,5,0]]输入:board = [[3,2,4],[1,5,0]]
输出:14提示:
board 是一个如上所述的 2 x 3 的数组.
board[i][j] 是一个 [0, 1, 2, 3, 4, 5] 的排列.

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/sliding-puzzle
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. BFS解题

在这里插入图片描述
类似于上图的拼图游戏,问到达某一状态的最小移动步数。

类似题目:LeetCode 1284. 转化为全零矩阵的最少反转次数(BFS & 矩阵状态编码解码)

  • BFS,队列push地图的初始状态
  • 将队列里的状态取出,还原地图,按着几个方向移动0,生成的新的状态,push进队列
class Solution {vector<vector<int>> dir = {{1,0},{0,1},{0,-1},{-1,0}};int m, n, i, j, k, step = 0, size, x, y;
public:int slidingPuzzle(vector<vector<int>>& board) {m = board.size(), n = board[0].size();string ans = "123450", state;int x0, y0, xi, yi;pair<int,int> xy0;//0的坐标queue<string> q;unordered_set<string> visited;//访问标记集合state = boardToString(board);//初始状态if(state == ans)return step;q.push(state);visited.insert(state);while(!q.empty()){step++;size = q.size();while(size--){xy0 = stringToBoard(q.front(), board);//还原地图,并得到0的坐标q.pop();x0 = xy0.first;y0 = xy0.second;for(k = 0; k < 4; ++k){	//0可以4个方向交换xi = x0+dir[k][0];yi = y0+dir[k][1];if(xi>=0 && xi<m && yi>=0 && yi<n){swap(board[xi][yi], board[x0][y0]);//交换state = boardToString(board);//新的状态if(state == ans)return step;if(!visited.count(state))//没有出现过该地图{visited.insert(state);q.push(state);}swap(board[xi][yi], board[x0][y0]);//还原现场}}}}return -1;}string boardToString(vector<vector<int>>& board) {	//地图转成字符串string s;for (i = 0; i < m; i++)for(j = 0; j < n; j++)s.push_back(board[i][j]+'0');return s;}pair<int,int> stringToBoard(string &s, vector<vector<int>>& board){	//字符串还原成地图,并return 0的坐标,方便下次挪动for (i = m-1; i >= 0; i--)for(j = n-1; j >= 0; j--){board[i][j] = s.back()-'0';s.pop_back();if(board[i][j] == 0)x = i, y = j;}return make_pair(x, y);}
};

在这里插入图片描述

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

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

相关文章

Spring Cloud实战小贴士:随机端口

太久没有更新&#xff0c;一时不知道该从哪儿开始&#xff0c;索性就从一个小技巧开始吧。 在之前的《Spring Cloud构建微服务架构》系列博文中&#xff0c;我们经常会需要启动多个实例的情况来测试注册中心、配置中心等基础设施的高可用&#xff0c;也会用来测试客户端负载均衡…

图谱实战 | 基于金融场景的事理图谱构建与应用

分享嘉宾&#xff1a;肖楠 京东科技 算法专家编辑整理&#xff1a;付村 云融创新出品平台&#xff1a;DataFunTalk导读&#xff1a;今天分享京东科技近期在事理图谱构建和应用方面的研究成果&#xff0c;主要分为以下五个部分&#xff1a;京东科技图谱简介金融事理图谱构建因果…

综述 | 基于深度学习的目标检测算法

计算机视觉是人工智能的关键领域之一&#xff0c;是一门研究如何使机器“看”的科学。图像目标检测又是计算机视觉的关键任务&#xff0c;主要对图像或视频中的物体进行识别和定位&#xff0c;是AI后续应用的基础。因此&#xff0c;检测性能的好坏直接影响到后续目标 追踪、动作…

LeetCode 1337. 方阵中战斗力最弱的 K 行(优先队列)

1. 题目 给你一个大小为 m * n 的方阵 mat&#xff0c;方阵由若干军人和平民组成&#xff0c;分别用 0 和 1 表示。 请你返回方阵中战斗力最弱的 k 行的索引&#xff0c;按从最弱到最强排序。 如果第 i 行的军人数量少于第 j 行&#xff0c;或者两行军人数量相同但 i 小于 j…

Spring Cloud实战小贴士:版本依赖关系

去年在博客上连载了《Spring Cloud构建微服务架构》的系列博文&#xff0c;虽然这部分内容得到了不少关注者们的支持&#xff0c;但是不得不说这些内容只是适用于Spring Cloud入门阶段对各个组件的初步认识。所以&#xff0c;今年除了将会继续更新《Spring Cloud构建微服务架构…

关于神经网络,一个学术界搞错了很多年的问题

文 | 五楼知乎说一个近年来神经网络方面澄清的一个误解。BP算法自八十年代发明以来&#xff0c;一直是神经网络优化的最基本的方法。神经网络普遍都是很难优化的&#xff0c;尤其是当中间隐含层神经元的个数较多或者隐含层层数较多的时候。长期以来&#xff0c;人们普遍认为&am…

Consul注销实例时候的问题

当我们在Spring Cloud应用中使用Consul来实现服务治理时&#xff0c;由于Consul不会自动将不可用的服务实例注销掉&#xff08;deregister&#xff09;&#xff0c;这使得在实际使用过程中&#xff0c;可能因为一些操作失误、环境变更等原因让Consul中存在一些无效实例信息&…

刷榜思路少?顶级中文NLP比赛解题方法直播来了!

如何利用稠密向量表示学习方法提升模型在大规模中文段落数据中的检索能力&#xff1f;如何利用外部知识信息减少模型在智能音箱、语音助手等产品中因知识不足导致的“智商”掉线&#xff1f;深度学习在众多NLP任务取得惊艳表现&#xff0c;但如何缓解其黑盒属性造成的应用落地「…

LeetCode 1338. 数组大小减半

1. 题目 给你一个整数数组 arr。你可以从中选出一个整数集合&#xff0c;并删除这些整数在数组中的每次出现。 返回 至少 能删除数组中的一半整数的整数集合的最小大小。 示例 1&#xff1a; 输入&#xff1a;arr [3,3,3,3,5,5,5,2,2,7] 输出&#xff1a;2 解释&#xff1a…

技术动态 | 知识图谱的自监督学习与逻辑推理

分享嘉宾&#xff1a;胡子牛 UCLA PHD编辑整理&#xff1a;wei ai-fir出品平台&#xff1a;DataFunTalk导读&#xff1a;知识图谱是一种多关系的图结构&#xff0c;每个节点表示一个实体&#xff0c;每个边表示连接的两个节点之间的关系&#xff0c;可以将图谱中建模的节点和边…

为Spring Cloud Ribbon配置请求重试(Camden.SR2+)

当我们使用Spring Cloud Ribbon实现客户端负载均衡的时候&#xff0c;通常都会利用LoadBalanced来让RestTemplate具备客户端负载功能&#xff0c;从而实现面向服务名的接口访问&#xff08;原理可见《Spring Cloud源码分析&#xff08;二&#xff09;Ribbon》一文&#xff0c;如…

聊聊谷歌Pathways带来的想象力

声明&#xff1a;本文原创首发于公众号夕小瑶的卖萌屋&#xff0c;作者Severus--->【我是传送门】今年清明节&#xff0c;Google 搞了一点小动作&#xff0c;在 arxiv 上放出了自己的新工作&#xff0c;PaLM[1] &#xff08;PaLM: Scaling Language Modeling with Pathways&…

LeetCode 1339. 分裂二叉树的最大乘积(DP)

1. 题目 给你一棵二叉树&#xff0c;它的根为 root 。请你删除 1 条边&#xff0c;使二叉树分裂成两棵子树&#xff0c;且它们子树和的乘积尽可能大。 由于答案可能会很大&#xff0c;请你将结果对 10^9 7 取模后再返回。 示例 1&#xff1a; 输入&#xff1a;root [1,2…

大规模模型训练tricks集锦

文 | Connolly知乎大规模模型训练其实就是在和计算、存储和通信玩的过程&#xff0c;所以我列一下跟这些相关的文章。1. 大规模模型并行策略先来介绍一下几种经典的并行范式&#xff0c;以及他们对应的经典文章1.1 数据并行(Data parallelism)不同设备执行相同模型&#xff0c;…

Spring Cloud源码分析(二)Ribbon

断断续续看Ribbon的源码差不多也有7-8天了&#xff0c;总算告一段落。本文记录了这些天对源码的阅读过程与一些分析理解&#xff0c;如有不对还请指出。 友情提示&#xff1a;本文较长&#xff0c;请选择一个较为舒适的姿势来阅读 在之前介绍使用Ribbon进行服务消费的时候&…

LeetCode 1340. 跳跃游戏 V(DP)

1. 题目 给你一个整数数组 arr 和一个整数 d 。每一步你可以从下标 i 跳到&#xff1a; i x &#xff0c;其中 i x < arr.length 且 0 < x < d 。i - x &#xff0c;其中 i - x > 0 且 0 < x < d 。 除此以外&#xff0c;你从下标 i 跳到下标 j 需要满足…

论文浅尝 | TKGR with Low-rank and Model-agnostic Representations

笔记整理&#xff1a;李行&#xff0c;天津大学硕士链接&#xff1a;https://arxiv.org/pdf/2204.04783v1.pdf动机现有MKGC方法中的知识转移效率低下&#xff0c;因为它们分别对每个KG进行编码并通过强制对齐的实体共享相同的嵌入来转移知识。亮点本文的亮点主要包括&#xff1…

ICLR’22 最佳脑洞奖提名:《GPT 如何进行布朗运动?》

文 | 付瑶编 | 小轶今天给大家介绍一篇斯坦福大学的 ICLR22 论文。该文在 OpenReview 中获得了8/8/8/8的高分。在写这篇推送之前&#xff0c;小编身边有多位朋友都私下向我推荐过这篇文章。虽然这几位朋友所研究的任务并不相同&#xff0c;却都认为这篇文章“极具启发性&#x…

条件随机场(Conditional Random Field,CRF)

文章目录1. 概率无向图模型1.1 模型定义1.2 概率无向图模型的因子分解2. 条件随机场的定义与形成2.1 条件随机场的定义2.2 条件随机场的参数化形式例题2.3 条件随机场的简化形式2.4 条件随机场的矩阵形式例题3. 条件随机场的概率计算问题3.1 前向-后向算法3.2 概率计算3.3 期望…

Spring Cloud构建微服务架构(七)消息总线

先回顾一下&#xff0c;在之前的Spring Cloud Config的介绍中&#xff0c;我们还留了一个悬念&#xff1a;如何实现对配置信息的实时更新。虽然&#xff0c;我们已经能够通过/refresh接口和Git仓库的Web Hook来实现Git仓库中的内容修改触发应用程序的属性更新。但是&#xff0c…