![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
搜索
文章平均质量分 56
穷竭搜索
加油AC
今天我AC了吗?
展开
-
C++用DFS解POJ3050_Hopscotch问题
POJ3050 Hopscotch题目链接:POJ3050 Hopscotch简单理解一下题目:给定5×5的数组,从任一位置开始,走五步,只能走左下右上四个方向,走过的部分组成一个数字字符串,求一共能产生多少个不同的字符串。简单分析一下题目:产生的字符串要是一个个判断是否出现过就很麻烦,这里我们可以用STL里面的set这个数据结构,set是一个集合,里面不会有重复的元素出现,我们只要把所有情况都遍历,然后把生成的所有元素都添加进集合里面,最后输出集合的大小即可。AC代码:#include&l原创 2022-05-10 10:12:33 · 154 阅读 · 0 评论 -
C++用穷竭搜索解POJ3187_Backward Digit Sums问题
POJ3187 Backward Digit Sums题目链接简单理解一下题目:给1-N的数列,类似于杨辉三角,两两相加得到新的数列,每一次加完数字个数就减少一个,但是和会增加,问这N个数字使得和为给定的sum的最小字典序排列。简单分析一下题目:这道题就是简单的暴力搜索,跟上一篇博客那道POJ2718的问题用的方法也一样,就是用next_permutation()全排列,由于这个函数是按照字典序来排列的,就可以很方便地解决题目需要的最小字典序排列问题。AC代码:#include<iost原创 2022-05-09 21:41:35 · 252 阅读 · 0 评论 -
C++用BFS广度优先搜索解POJ_3669_Meteor Shower问题
POJ_3669_Meteor Shower就不放题目了,去POJ搜题号就可以看到简单理解一下题目:张三遇到了流星雨,原创 2022-05-07 10:58:02 · 175 阅读 · 0 评论 -
C++用穷竭搜索解POJ2718 Smallest Difference问题——《挑战程序设计竞赛》
POJ2718 Smallest Difference题目链接:POJ2718 Smallest Difference简单理解一下题目:给定一些0-9中的数字,用这些数字组成两个数,求使得两个数之差最小的那种方案,输出两个数的差。看一下输入:10 1 2 4 6 7输入的第一行表示有几个样例,接下来每一行就是一个样例,由于我们不知道每个样例有多少个数字,所以我用getchar()方法来输入。每输入一个字符就判断一下是不是换行符,如果是换行符就说明这个样例已经输入完毕,这里要注意的是,开头输原创 2022-05-07 10:26:45 · 92 阅读 · 0 评论 -
Python/C++: 深度优先搜索DFS解八数码问题
深度优先搜索DFS解八数码问题题目:➢在一个3×3的九宫中有1-8这8个数字以及一个空格随机摆放在其中的格子里。将该九宫格调整到目标状态。➢规则:每次只能将与空格(上、下、左、右)相邻的一个数字移动到空格中。➢备注:为了程序中表示方便,可以用0代替空格。为了程序能正常运行并方便比较,给每个样例设置3个搜索最大深度:5,15,25,设置最大搜索步数是10000步样例:样例1:0 1 34 2 57 8 6样例2:1 5 32 4 67 0 8在八数码问题中,深度优先搜索DFS属于盲原创 2022-05-07 09:57:02 · 2007 阅读 · 1 评论 -
张三玩冰壶:C++用DFS深度优先搜索解POJ3009 Curling 2.0问题
POJ_3009_Curling 2.0就不放英文题目了,去POJ搜题号就可以看到简单理解一下题目:张三去玩一种新出的冰壶项目,在一个棋盘一样的冰面上,他站在其中一格S上,从S点出发,有一些棋盘格有障碍物,他可以沿着上左下右四个方向运动,但是只有碰到障碍物才能停下来,而且碰到障碍物会停在运动方向上障碍物前面那个格子上,障碍物会消失,一个方向算一步,如果步数超过10或者不小心出界都算失败,问张三最短走几步能到终点G。看一下输入:一次性输入好几组数据,每一组开头是棋盘的横向距离和纵向距离(非常无奈我在原创 2021-11-18 23:22:02 · 846 阅读 · 0 评论 -
张三踩瓷砖:C++用DFS深度优先搜索解POJ1979 Red and Black问题
POJ_1979_Red and Black先放题目:Description:There is a rectangular room, covered with square tiles. Each tile is colored either red or black. A man is standing on a black tile. From a tile, he can move to one of four adjacent tiles. But he can’t move on red原创 2021-11-11 00:55:29 · 705 阅读 · 0 评论