dfs
sunnyorrainy
这个作者很懒,什么都没留下…
展开
-
约瑟夫环,递归
约瑟夫环n个人, 从1到n开始编号,每次数到m,就把那个人去掉。问最后的那个人是谁#pragma warning(disable:4996)#include<iostream>#include<algorithm>#include<cstdio>#include<map>#include<set>#include<cmath>#include<ctime>#include<vector&g原创 2020-10-01 16:01:06 · 136 阅读 · 0 评论 -
全排列,STL版,dfs版
获取全排列,可以深搜dfs,也可以STL的next_permutatiion,和prev_permutation,头文件algorithmSTL真的方便,不过得注意奇奇怪怪的东西next_permutatiion,和prev_permutation返回值true或者false,当这个数组按照字典序有下一个(上一个)全排列的时候,返回true并产生这个全排列没有就返回false...原创 2019-12-02 20:41:51 · 91 阅读 · 0 评论 -
codeforces915c dfs
题意:一个数a和一个数b,不含前导零,移动a的数字的位置,使得a成为比b小的最大的数。题题解:用一个数组存a中的数,一个数组存b中的数。从大到小对a排序。如果a的数字个数比b少,直接输出。如果是一样长,记录a中数字出现的次数,然后dfs。因为最大的数是1e18,直接dfs a中的数字会超时,所以就dfs 0到9这十个数如果出现了比b中对应的数字小的数字,就直接把剩下的数字从大到小填...原创 2019-12-02 14:50:37 · 92 阅读 · 0 评论 -
dfs模板 数独游戏
题目链接数独:1到9,每一行每一列还有九个小的3X3方格中出现且仅出现一次dfs的搜索,要注意判断条件,如何判断我没有想到,看了别人的做法才知道,还是太弱啊。题不难,但是这是个有趣的问题,借助计算机和dfs,轻松成为数独高手。#include<stdio.h>#include<algorithm>#include<iostream>#in...原创 2019-08-09 10:57:57 · 290 阅读 · 0 评论 -
dfs模板 棋盘问题poj1321
在一个n*n的棋盘上,#代表可以放棋子的位置。要放k个棋子,问有多少种方案dfs的简单题,直接搜就行,搜到一种方案就计数要注意判断条件和vis标记#include<iostream>#include<cstring>#include<algorithm>#include<cstdio>#include<queue>...原创 2019-08-07 19:57:21 · 137 阅读 · 0 评论 -
dfs模板 去重poj1564
按照降序排序给一组数字,和一个数t。算出所有t的和的方案比如1 2 3 4,t为4,t可以是4,也可以是1+3简单的dfs题,但是不容易想到如何去重。膜拜大佬这个模板挺好写的,就是dfs,然后加起来等于t就输出,但是不容易想到处理方式。#include<iostream>#include<cstring>#include<algorithm>...原创 2019-08-07 21:12:33 · 211 阅读 · 0 评论 -
dfs模板,回溯poj2362
题意:给一组木棍,问能否把它们全部用上,首尾相接构成一个正方形很明显的dfs,需要剪枝,不过挺好想的,但是每次搜的位置不好想,因为对于每一条边,如果前面已经搜过的木棍用不上,那么它就永远用不上,就直接往后搜对于标记,把所有搜过的木棍都标记,然后没有用到的取消标记,用到的进入下一次的搜索#include<iostream>#include<cstdlib>#...原创 2019-08-06 08:12:20 · 126 阅读 · 0 评论