
搜索DFS/BFS
搜索
_昨日不可追
这个作者很懒,什么都没留下…
展开
-
棋盘问题 POJ - 1321
题目链接在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。Input输入含有多组测试数据。每组数据的第一行是两个正整数,n k,用一个空格隔开,表示了将在一个n*n的矩阵内描述棋盘,以及摆放棋子的数目。 n <= 8 , k <=...原创 2019-07-21 22:20:52 · 151 阅读 · 0 评论 -
A - Backward Digit Sums(poj3187 全排列搜索)
传送门FJ and his cows enjoy playing a mental game. They write down the numbers from 1 to N (1 <= N <= 10) in a certain order and then sum adjacent numbers to produce a new list with one fewer numb...原创 2019-10-18 21:52:02 · 145 阅读 · 0 评论 -
Codeforces Round #625 (Div. 2, based on Technocup 2020 Final Round) D - Navigation System(最短路 BFS)
传送门题意:给一个有向图,然后有一条长度为k要走的路径,起点,终点确定如果在之间走的时候,发现有可以到达终点的更短的路径,可以重新选择路径问重新选择次数的最小值和最大值思路:先反向建边,bfs算出终点到每个点的最短路径考虑重新选择路径的情况1,如果在走的路径上的下一个点到终点不是最短的且有其他比他更短的路径,那么一定要重新选择2,如果在走的路径上的下一个点到终点是最短的且还有其他...原创 2020-03-02 23:45:09 · 247 阅读 · 0 评论 -
M - 非常可乐(bfs)
传送门大家一定觉的运动以后喝可乐是一件很惬意的事情,但是seeyou却不这么认为。因为每次当seeyou买了可乐以后,阿牛就要求和seeyou一起分享这一瓶可乐,而且一定要喝的和seeyou一样多。但seeyou的手中只有两个杯子,它们的容量分别是N 毫升和M 毫升 可乐的体积为S (S<101)毫升 (正好装满一瓶) ,它们三个之间可以相互倒可乐 (都是没有刻度的,且 S==N+M,10...原创 2019-09-19 18:27:57 · 180 阅读 · 0 评论 -
C - Catch That Cow(bfs)
传送门题意:从n到k,每个点可以#include <iostream>#include <algorithm>#include <stdio.h>#include <string>#include <string.h>#include <map>#include <math.h>#include ...原创 2019-09-14 12:22:47 · 116 阅读 · 0 评论 -
B - Dungeon Master(bfs)
传送门题意:三维的迷宫,l,r,c;S是入口,E是出口,.可以走,#不可以走,求出去的最短时间#include <iostream>#include <stdio.h>#include <algorithm>#include <string.h>#include <vector>#include <math.h>...原创 2019-09-14 09:33:00 · 131 阅读 · 0 评论 -
AT46 リモコン(bfs 水题)
传送门题意翻译题目描述: 高桥君要调整空调的设定温度。现在的设定温度是A度,而他想调到B度。 空调遥控器按一次可以:上调或下调1度上调或下调5度上调或下调10度 高桥君想求出从A调到B度的最小操作数。输入格式: 输出以下列形式给出。A B0<=A,B<=40输出格式: 输出最小操作数。样例与说明:样例1: 输入:7 34输出:5依次上调10、10、5、1、...原创 2019-09-12 20:39:57 · 430 阅读 · 0 评论 -
矩阵距离
矩阵距离假设我们有一个矩阵a,其元素值非 0 即 1:定义a[i,j]与a[k,l]之间的距离为D(aij,akl)=abs(i-k)+abs(j-L)Input输入文件的第一行为两个整数,分别代表n和m。接下来的n行,第i行的第 j个字符代表aijOutput输出包含N行,每行M个用空格分开的数字,其中第i行第J个数字代表Min(D(aij,axy) 1<=x<=N ...原创 2019-11-09 13:06:41 · 2103 阅读 · 0 评论 -
bfs 练习题
最少拐弯问题nefuoj////////////////////////////////////////////////////////////////////////////#include<iostream>#include<cstdio>#include <queue>using namespace std;int n,m,x1,x2,y1,y...原创 2019-03-23 20:08:35 · 568 阅读 · 0 评论 -
2019CCPC秦皇岛赛区 hdu 6736 Forest Program(dfs找出所有环的大小&&组合计数)
传送门Forest ProgramTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 1745 Accepted Submission(s): 612Problem Description The kingdom of Z is fighting against原创 2020-08-11 12:01:43 · 243 阅读 · 0 评论 -
牛客小白月赛23 G树上求和 (dfs)
dfs一遍求出每个子树的大小统计一下每条边经过的次数,排序赋值即可代码:typedef long long ll;using namespace std;const int MAXN=1e5+50;const int inf=0x3f3f3f3f;const int M=5000*4;const int mod=1e9+7;int n;vector<int>p[MAXN];ll ans;ll dp[MAXN];ll x[MAXN];struct sa{ in.原创 2020-06-07 12:24:00 · 293 阅读 · 0 评论 -
牛客练习赛61 C.四个选项(并查集 DFS)
传送门题意:思路:先把答案必须一样的用并查集放在一起然后用cnt数组记录一下整合的每一堆的个数然后dfs,判断所有情况即可(每次判断的是四个选项我可不可以选这个)代码:#include <iostream>#include <stdio.h>#include <algorithm>#include <string.h>#inc...原创 2020-04-11 14:11:58 · 252 阅读 · 0 评论 -
树的最长路径(树上dp,dfs)边权
传送门题意:给定一棵树,树中包含 n 个结点(编号1~n)和 n−1 条无向边,每条边都有一个权值。现在请你找到树中的一条最长路径。换句话说,要找到一条路径,使得使得路径两端的点的距离最远。注意:路径中可以只包含一个点。代码:dp[x],表示从x出发的子树中的最长路径#include <iostream>#include <stdio.h>#incl...原创 2020-02-24 15:40:46 · 981 阅读 · 0 评论 -
B:树上子链 (dfs,树上dp)点权
传送门题意:给定一棵树 T ,树 T 上每个点都有一个权值。定义一颗树的子链的大小为:这个子链上所有结点的权值和 。请在树 T 中找出一条最大的子链并输出。就是求树上的最长路径dp[x]代表到x的子树中的路径的最大值代码:#include <iostream>#include <stdio.h>#include <algorithm>#...原创 2020-02-24 13:23:50 · 361 阅读 · 0 评论 -
F:maki和tree( 树上dp dfs )
2020牛客寒假算法基础集训营1题意:思路:只用找到每个黑点,对于每个黑点来说看他的每个子树白色点的个数路径有两种情况1,黑点直接到白色点子树的路径2,从白色点子树到黑点再到另一个白色子树的路径代码:两种写法树上dp#include <iostream>#include <stdio.h>#include <algorithm>#...原创 2020-02-22 15:18:13 · 271 阅读 · 0 评论 -
滑雪poj1088(dfs,dp)
传送门Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道载一个区域中最长底滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子1 2 3 4 516 17 18 19 615 24 25 20 714 23 22 21 813 12 1...原创 2019-10-07 16:07:44 · 152 阅读 · 0 评论 -
能花完吗?(dfs)
传送门有N种水果,18级的新生小王同学兜里有M元钱,想买K 个水果,但他想刚刚把M元钱花完,有这个可能吗?Input第一行输入M,N,K含义如上;(1<=M<=1e8,1<=n<=30,1<=k<=8)接下来是每种水果的价格;Output如果可以的话,输出Yes;否则输出No;Sample Input20 5 31 2 3 15 6Samp...原创 2019-09-22 20:00:03 · 181 阅读 · 0 评论