dfs
文章平均质量分 56
dfs
SSL_kyx
简~介
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
YbtOJ——广度搜索【例题3】立体推箱子
C. 【例题3】立体推箱子题目题解求最少步数,当然用广搜。队列里记录当前这一步的三个状态,分别是:坐标(x,y)和箱子状态( t )。其中箱子的状态有三种:立着,横躺着,竖躺着。分别用0,1,2表示。箱子横着躺或竖着躺占两个格子,对于横躺,将其坐标记作右边的格子;对于竖躺,坐标记作下面的格子。再加些处理0()代码#include<iostream>#include<algorithm>#include<cstring>#include<cs原创 2021-06-20 11:57:12 · 192 阅读 · 0 评论 -
YbtOJ——广度搜索【例题2】山峰和山谷
B. 【例题2】山峰和山谷题目题解先解释一下样例:红笔圈着的是两个山峰,其余的形成一个山谷。每次从未访问过的点开始BFS,对它相邻的点(八连通)进行搜索:若搜索的点等于当前点,则加入队列若搜索的点大于当前点,则标记它不可能为山峰若搜索的点小于当前点,则标记它不可能为山谷代码#include<iostream>#include<algorithm>#include<cstdio>#include<queue>using na原创 2021-06-19 11:12:22 · 310 阅读 · 0 评论 -
YbtOJ——深度搜索【例题2】数独游戏
B. 【例题2】数独游戏题目题解经过不断地debug,终于用自己的方法做出这题了。我的方法跟书上的不同,自认为更简单些。用三个二维数组分别记录每一行、列、宫中是否出现1~9,即判重,来进行剪枝。dfs每个输入时就储存下来的空着的格子,枚举1~9并根据判重数组判断能否填入该数字。填完所有空格后,输出并直接退出,最后别忘了初始化那三个判重数组,因为有多组数据。若点(x,y)(x,y)(x,y)的数为 ttt,三个判重的数组可以这样写:fx[x][t]=1;//行fy[y][t]=1;//列原创 2021-06-13 12:01:30 · 368 阅读 · 3 评论 -
YbtOJ——深度搜索【例题1】拔河比赛
A. 【例题1】拔河比赛题目题目链接题解由于本题数据过水,用爆搜即可过掉。只考虑一个队伍,搜索每个人加不加进这个队伍里,若不加其实就是加进另一个队。若当前加的人数未达半数,即可加进去;若当前没加的人数未达半数,即可不加进去代码#include<iostream>#include<cmath>using namespace std;int t,n,m,ans,a[100];void dfs(int dep,int c1,int c2,int sum,int原创 2021-06-13 08:56:17 · 362 阅读 · 1 评论 -
【SSL_1438】骑马修栅栏 _P2731
游乐场Time Limit:10000MS Memory Limit:65536KTotal Submit:111 Accepted:52Case Time Limit:1000MSDescription据新闻报道,Orz教主在太平洋中央建了一个大游乐园,其中有许多小岛,每个小岛上有且仅有一个游乐设施,有的小岛与小岛之间有海底隧道连接,而有的没有,一个游乐设施对一个人只开放一次,花的钱与得到的快乐值成正比。一开始,你可以选择被空投到任意一个小岛。当你想离开游乐园时,你可以打电话叫飞机来接,但不能原创 2021-01-03 16:43:15 · 144 阅读 · 0 评论 -
【SSL_1759】求连通分量 #邻接矩阵 #邻接表 #dfs #bfs #队列
求连通分量Time Limit:1000MS Memory Limit:65536KTotal Submit:481 Accepted:290Description求一个图的连通分量Inputn 顶点数(<=100)边Output连通分量Sample Input86 31 22 55 44 18 70 0Sample Output4原创 2021-01-02 20:01:23 · 2696 阅读 · 4 评论 -
【SSL_1202】滑雪(normal)【洛谷_P1434】[SHOI2002]
滑雪Time Limit:1000MS Memory Limit:65536KTotal Submit:244 Accepted:57DescriptionMichael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子1 2 3 4 516 17 18 19 615 24 25 20 71原创 2020-12-19 10:43:44 · 151 阅读 · 1 评论 -
【SSL_1458】dfs数字金字塔
数字金字塔题目你和权权是一对很好很好的朋友。有一天,你们无聊得很,便上网冲浪,突然在一个叫做USACO的网中找到了一个游戏:《数字金子塔》。游戏规则是这样的:求一个数字金字塔中从最高点开始在底部任意处结束的路径经过数字的和的最大,其中的每一步可以走到下方的点也可以到达右下方的点。例如在下面的例子中,从7 — 3 — 8 — 7 –- 5的路径产生了最大和:30。73 88 1 02 7 4 44 5 2 6 5你们便约定了谁能计算出最后的值便是赢者。你仰天(天花板)长叹:我能成为赢者吗,要知原创 2020-08-18 19:47:49 · 1169 阅读 · 5 评论 -
【SSL_1100】数字金字塔(DP)—搜索、顺推、逆推三种代码都有
#include<stdio.h>#include<iostream>#include<cstring> #include<cstdlib>#include<cmath> using namespace std;int meno[1001][1001],a[1001][1001],n;int dfs(int x,int y){ if(meno[x][y]!=0){ return meno[x][y]; }if(x==n)meno[x][y]=a[x][y]; else{ meno原创 2020-08-18 19:50:32 · 652 阅读 · 5 评论 -
谷仓的安保
谷仓的安保题目Farmer John给谷仓安装了一个新的安全系统,并且要给牛群中的每一个奶牛分配一个有效的密码。一个有效的密码由L(3 <= L <= 15)个小写字母(来自传统的拉丁字母集’a’…‘z’)组成,至少有一个元音(‘a’, ‘e’, ‘i’, ‘o’, 或 ‘u’)和两个辅音(除去元音以外的音节),并且是按字母表顺序出现的(例如,'abc’是有效的,而’bac’不是) 。给定一个期望长度L和C个小写字母,写一个程序,打印出所有的长度为L、能由这给定的C个字母组成的有效密原创 2020-08-18 14:43:15 · 2013 阅读 · 7 评论 -
特殊的质数肋骨 (DFS)
特殊的质数肋骨 (DFS)题目农民约翰母牛总是产生最好的肋骨。你能通过农民约翰和美国农业部标记在每根肋骨上的数字认出它们。农民约翰确定他卖给买方的是真正的质数肋骨,是因为从右边开始切下肋骨,每次还剩下的肋骨上的数字都组成一个质数,举例来说:7 3 3 1全部肋骨上的数字 7331是质数;三根肋骨 733是质数;二根肋骨 73 是质数;当然,最后一根肋骨 7 也是质数。7331 被叫做长度 4 的特殊质数。写一个程序对给定的肋骨的数目 N (1<=N<=8),求出所有的特殊质数。原创 2020-08-18 09:46:39 · 626 阅读 · 5 评论
分享