E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
-深搜-
[NOIP 2004] 虫食算 (
深搜
+剪枝)
题目描述所谓虫食算,就是原先的算式中有一部分被虫子啃掉了,需要我们根据剩下的数字来判定被啃掉的字母。来看一个简单的例子:43#9865#045+8468#663344445509678其中#号代表被虫子啃掉的数字。根据算式,我们很容易判断:第一行的两个数字分别是5和3,第二行的数字是5。现在,我们对问题做两个限制:首先,我们只考虑加法的虫食算。这里的加法是n进制加法,算式中三个数都有n位,允许有前
cqbz_luoyiran
·
2020-08-20 03:19
搜索
NOIP
dfs练习题
POJ1321棋盘问题题意:#号位置可以放置棋子,给你一个n*n的棋盘,其中有多少种可以放置k个棋子的办法,同时要满足一个条件就是同一行同一列不能有两个棋子及以上思路:dfs
深搜
,用vis数组标记各个列是否放置了妻子
acm123456789ctf
·
2020-08-20 03:14
【例题·搜索】Addition Chains(迭代加
深搜
索)
做法首先需要说一下什么叫做迭代加
深搜
索。在某一颗搜索树上,如果答案在这一棵树的浅层那么我们如果在深度较大的子树上搜索就会浪费很多的时间,因此我们需要需要控制搜索的深度,不断的从浅层向深层进行扩展。
pigzhouyb
·
2020-08-20 03:06
搜索
[算法进阶指南]习题题解
深搜
与广搜
深搜
深搜
是一种一条路走到黑,碰壁就倒退的算法。运用递归思想,如果到了不符合条件的节点就撤回一步,然后再选择另一条路走下去。如果这个节点的所有路径都走完了,再撤回一步。
johnwayne0317
·
2020-08-19 10:08
noip
Sticks(经典
深搜
+剪枝)
#include#includeusingnamespacestd;//total能组成的木棒的组数,l:组成的木棒的长度inttotal,l;//num:输入的整数,sum:总长度intnum,sum;typedefstruct{intlength;//木棒的长度boolmark;//木棒是否被使用过}Sticks;Stickssticks[70];boolcmp(Sticksa,Sticksb
yanbingqaq
·
2020-08-19 10:23
oJ练习(C++)
bzoj 1079 题解
迭代加
深搜
索,加点dp的味道状态定义有点神奇dp[a][b][c][d][e][l]表示还剩a个1,b个2,c个3,d个4,e个5,最后一个属于什么分类来分那么的话就从b变成a就是(b-1),(a+1)
haha_2678
·
2020-08-19 09:52
dp
Bzoj
hdu 2362 square(附网上的数据)【
深搜
】
一、原文大致意思:给一堆长短不一的棍子。让你求这些棍子能不能组成一个正方形。如果可以输出“yes”,否者输出“no”。二、网上的一些测试数据(源数据在这里:http://poj.org/showmessage?message_id=95450)102049110501123376104513916561901305537205331193465398125875610059496320143194
爱学习的大白菜
·
2020-08-19 09:47
刷题
dfs题
include#includechara[110][110];不包含空格的输入用字符数组更好intm,n;intsum=0;usingnamespacestd;voiddfs(intx,inty)四个方向
深搜
casczm
·
2020-08-19 09:08
复赛小知识
、贪心、暴力、高精度1.针对数据卡数据2.随机输出3.用暴力弥补自己的算法三、字符串1.KMP最小表示法四、宽搜、宽搜、宽搜1.队列大小,顶着内存空间开,至少剩下$20MB$2.判重,寻找专属质数五、
深搜
baiyigua6419
·
2020-08-19 08:16
数据结构与算法
NOIP2010【引水入城】
,求出每个第一行的格子能覆盖到的最后一行的最左和最右的格子用g[1][j][0/1]表示(刚开始用广搜(注释的部分),每次求一个格子都遍历一边(比较蠢)复杂度是o(n*m^2)只能过七十分,后来改成了
深搜
只遍历一遍算出所有
Woodstock_Cyber
·
2020-08-19 08:59
历届NOIP
搜索
动态规划
程序员面试金典 16.19
只需要遍历每一个点,
深搜
统计连通的池塘大小,最后排序返回即可。
RayoNicks
·
2020-08-19 08:21
《程序员面试金典》
最大岛屿
算法:
深搜
Description神秘的海洋,惊险的探险之路,打捞海底宝藏,激烈的海战,海盗劫富等等。加勒比海盗,你知道吧?杰克船长驾驶着自己的的战船黑珍珠1号要征服各个海岛的海盜,最后成为海盗王。
weixin_34413103
·
2020-08-19 07:58
UVA307 Sticks小木棍
分析:可以用
深搜
,因为它的组成长度可能性只是所有木棍长度总和的因数,所以可以直接dfs。注意剪枝,四个剪枝:1、当前枚举的长木棍长度不是小木棍长的和的因数时跳过。
accosmos
·
2020-08-19 07:31
紫书第七章
【回文自动机】 2018 南京网络赛 Skr
题目链接:https://nanti.jisuanke.com/t/A1955题意:给定一个数字串,求每个不同回文数字串的和思路:由回文树可知,每个节点回文是由上一个节点转移而来,
深搜
奇回文树与偶回文树
Whyckck
·
2020-08-19 01:01
回文自动机
DFS
洛谷 题解 P1605 【迷宫】
洛谷题解P1605【迷宫】题目
深搜
经典例题,必须掌握!
作恶孤狼
·
2020-08-18 23:41
邻接表实现图的广搜和
深搜
(java模板)
//邻接表实现图的广搜和
深搜
(java模板)Java代码importjava.util.
weixin_33872566
·
2020-08-18 17:21
动态规划---基础讲解---和
深搜
有点像,不过也是懵懵的
先说下什么是动态规划:动态规划(dynamicprogramming)是运筹学的一个分支,是求解决策过程(decisionprocess)最优化的数学方法。动态规划算法通常用于求解具有某种最优性质的问题。在这类问题中,可能会有许多可行解。每一个解都对应于一个值,我们希望找到具有最优值的解。动态规划算法与分治法类似,其基本思想也是将待求解问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到
diedu5662
·
2020-08-18 14:52
Java实现图的遍历(
深搜
与广搜)
本文以邻接矩阵作为存储结构,用Java实现图的遍历,话不多说,先给出的图的结构,如下:1、深度优先搜索遍历思想:沿着树的深度遍历树的节点,尽可能深的搜索树的分支。当节点v的所有边都己被探寻过,搜索将回溯到发现节点v的那条边的起始节点。这一过程一直进行到已发现从源节点可达的所有节点为止。如果还存在未被发现的节点,则选择其中一个作为源节点并重复以上过程,整个进程反复进行直到所有节点都被访问为止。(百度
__Mzzz
·
2020-08-18 14:25
algorithms
树形dp 总结(转)
而
深搜
的特点,就是“不撞南墙不回头”。这一点在之后的文章中会详细的介绍。首先是扫
黑码
·
2020-08-18 13:46
dp
树形dp
基于二维矩阵的
深搜
(dfs)和广搜(bfs)python实现
该二维矩阵不是邻接矩阵,每个结点只和上下左右4个方向的结点有连接。defbfs(start,matrix):"""广搜"""n=len(matrix)queue=[]queue.append(start)vis=[[Falsefor_inrange(n)]for_inrange(n)]vis[start[0]][start[1]]=Truedires=[[0,1],[0,-1],[1,0],[-1
AivenZ
·
2020-08-18 13:39
算法与数据结构
基于二维矩阵的
深搜
dfs和广搜bfs Java实现
广搜的概念不用多讲了,这里的算法主要针对二维矩阵(迷宫)的广搜。二维矩阵中的点一般只与上下左右4个结点相邻,看题目定义,有的和斜角也相邻。所以就没必要用邻接矩阵存边数据,直接搜就可以啦。与传统bfs不同的数据结构:graph(二维矩阵图)vis(二维标记,标记对应位置是否访问过)direction(存行走方向,比如往左走就是{0,-1},表示i不变,j减一嘛,同理右{0,1},上{-1,0},下{
AivenZ
·
2020-08-18 13:23
算法与数据结构
【剑指offer29】【C++】顺时针打印矩阵【dfs
深搜
类似迷宫、一维二维vector数组初始化开辟空间的方法】
【剑指offer29】【C++】顺时针打印矩阵【dfs
深搜
类似迷宫、一维二维vector初始化开辟空间的方法】题目题解关注公众号:【THU小鱼干杂货铺】不间断分享LeetCode优质解题思路、大厂算法题解
程序员阿浪
·
2020-08-18 13:37
C++
LeetCode
c++
dfs
leetcode
算法
11212 - Editing a Book(IDA*算法)
又一道迭代加
深搜
索,从小到大枚举上限。关键的剪枝部分是写出启发函数,这个比较难。。
AC_Arthur
·
2020-08-18 09:28
uva解题报告
暴力
搜索
acm
uva
IDA
UVA - 11212 Editing a Book(迭代加
深搜
索 IDA* + 模板)
题目链接https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2153题目大意给定一个长度1~9的整数序列,每个整数1~9。序列是无序的,你有两种操作,剪切和粘贴,两种操作均可以处理任意长度。求至少经过多少次操作,可以使序列有序(递增)。解题过程本来感觉处理数组
weixin_30799995
·
2020-08-18 09:25
P1220 关路灯 动态规划/
深搜
剪枝
题目描述某一村庄在一条路线上安装了n盏路灯,每盏灯的功率有大有小(即同一段时间内消耗的电量有多有少)。老张就住在这条路中间某一路灯旁,他有一项工作就是每天早上天亮时一盏一盏地关掉这些路灯。为了给村里节省电费,老张记录下了每盏路灯的位置和功率,他每次关灯时也都是尽快地去关,但是老张不知道怎样去关灯才能够最节省电。他每天都是在天亮时首先关掉自己所处位置的路灯,然后可以向左也可以向右去关灯。开始他以为先
一qkm一
·
2020-08-18 09:02
一题多解
搜索
动态规划
UVA - 11212 Editing a Book(IDA* 迭代加
深搜
索+启发式算法)
思路:刘汝佳紫书上的题,设maxd为深度上限,最大为8.当前深度为d,,用h()计算当前后继不正确的数。剪枝条件为h()>3*(maxd-d),即h()+3d>3maxd.c++代码:#include#include#includeusingnamespacestd;inta[15];intn;intmaxd;boolis_sorted(){for(inti=1;i3*maxd)returnfal
一只谜谜怪
·
2020-08-18 09:02
dfs
IDA*
DFS入门 背包问题
目录DFS经典例题背包问题思路代码实现写在后面DFS
深搜
(也可以称为回溯法),可以理解为不撞南墙不回头,只有一直搜索下去,直到不满足结果,返回到上层,重新选择分支。
COHREZ
·
2020-08-18 09:02
算法
HDU 6031(CCPC女生赛1009)
大致思路是
深搜
,处理出每个点的父节点,倍增法处理出anc数组。
acInfinity
·
2020-08-18 09:10
------OJ------
HDU
20.4.7
也是上网上查后才知道的,哎,自己还是菜,下回想数据还是得想全着点儿一道“喊山”vector结构体存图,邻接表嘛,一开始邻接矩阵存图后超时,上网查到了可以用邻接表,也就是当作为复习了,结构体+vector就很爽想着是
深搜
binggui2
·
2020-08-18 08:06
日常
Fliptile POJ - 3279(超详解)
https://vjudge.net/problem/POJ-3279#author=0先说一下整体思路,先枚举第一行的2^(行数)种情况,然后往下
深搜
,实际上,第一行的状态确定了,下面行的状态也随之确定
不知所措的云
·
2020-08-18 08:55
vj
树形DP总结(转)
静态搜索树、AVL树,线段树、SPLAY树,后缀树等等..枚举那么多种数据结构只是想说树方面的内容相当多,本专辑只针对在树上的动态规划,即树形DP.做树形DP一般步骤是先将树转换为有根树,然后在树上进行
深搜
操作
发奋屠强
·
2020-08-18 07:05
DP&&记忆化搜索
Square Destroyer UVA - 1603
这个题知道是IDA*搜索,可是这个题最大的问题就是把所有的正方形都找出来,现在代码能力太弱了,这个东西写了两个小时都没写出来,最后借鉴了别人的把这个写了出来,剩下的就是枚举删除剩下的正方形每一个边,然后迭代加
深搜
索还有估值函数
GoneWithTheWind_yin
·
2020-08-18 07:31
UVA
IDA
uva11212(Editing a Book/编辑书稿)=>IDA*算法/经典的估价函数
解析:本题可用IDA*,也就是设计了估价函数的迭代加
深搜
索。
CCCmaster
·
2020-08-18 07:50
暴力
UVA 11212 Editing a Book
迭代加
深搜
索:对于可以用回溯法求解但解答树的深度没有明显上限的题目,可以考虑用迭代加
深搜
索。例如:埃及分数问题迭代加
深搜
索就是从小到大枚举深度上限maxd,每次执行只考虑深度不超过maxd的结点。
是皮卡丘奥
·
2020-08-18 07:09
OJ刷题
poj 3259 最短路(带负环)
本题有三中解法1、mellman_ford2、SPFA3、
深搜
或则宽搜这里只给出解法1和2的代码:1:#includeusingnamespacestd;co
qte_acm
·
2020-08-18 07:06
最短路算法及其一些应用
1004.Counting Leaves (30)
1004.CountingLeaves(30)pat-al-10042017-02-03
深搜
和广搜都可以/***pat-al-1004*2017-02-03*Cppversion*dfs*Author:
风怜目尽无疆地s
·
2020-08-18 07:10
pat
2017蓝桥杯整理
迷宫1.简单
深搜
#include#includeusingnamespacestd;stringdata[10];intans;intvis[10][10];//标记boolsolve(inti,intj
小熊迪帝
·
2020-08-18 06:49
Lake Counting(dfs
深搜
/ bfs广搜)
描述有一块N×M的土地,雨后积起了水,有水标记为‘W’,干燥为‘.’。八连通的积水被认为是连接在一起的。请求出院子里共有多少水洼?格式输入格式第一行为N,M(1≤N,M≤110)。下面为N*M的土地示意图。输出格式一行,共有的水洼数。样例输入样例1012W........WW..WWW.....WWW....WW...WW..........WW..........W....W......W...
偶尔写博客
·
2020-08-18 06:07
数据结构与算法
#回溯深搜
#广搜(BFS)
八皇后(简单
深搜
)
检查一个如下的6x6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。上面的布局可以用序列246135来描述,第i个数字表示在第i行的相应位置有一个棋子,如下:行号123456列号246135这只是跳棋放置的一个解。请编一个程序找出所有跳棋放置的解。并把它们以上面的序列方法输出。解按字典顺序排列。请输出前3个解。最后一行是
鶸鶸
·
2020-08-18 06:29
搜索
POJ - 1190 生日蛋糕(
深搜
+神奇的剪枝)
链接:https://ac.nowcoder.com/acm/contest/1015/B题目描述7月17日是Mr.W的生日,ACM-THU为此要制作一个体积为Nπ的M层生日蛋糕,每层都是一个圆柱体。设从下往上数第i(1≤i≤M)层蛋糕是半径为Ri,高度为Hi的圆柱。当iRi+1且Hi>Hi+1。由于要在蛋糕上抹奶油,为尽可能节约经费,我们希望蛋糕外表面(最下一层的下底面除外)的面积Q最小。令Q=
RioTian
·
2020-08-18 06:12
鸣人和佐助(老婆)
传送门鸣人和佐助
深搜
法:在图上
深搜
,需要剪枝细节都在注释里了#include#include#includeusingnamespacestd;intM,N,T;charG[210][210];intvisited
原地起飞
·
2020-08-18 05:14
剪枝
算法
dfs
0719-琐记-欧拉序,dfs序,ST表
刚刚又拉着ldw老师恶补了一些知识
深搜
序(dfs序)就是你
深搜
时走过的路径欧拉序就是你
深搜
走的路径,返回上一个节点时把上一个节点再记录一次详细讲解--戳这儿刚刚只是简略的提了一下,知道了个概念而已(但总比不知道好啊
Faithfully__xly
·
2020-08-18 05:05
最短路径、最小生成树
(原题目)Dijkstra适用于单源最短路径,即从某个点出发到其他各点的最短路径Floyd适用于多源最短路径,即任意点到其他点的最短路径还有一种SPFA,最短路径快速算法,基于
深搜
或广搜最小生成树,即怎么最少的权重使所有点连通
纯木
·
2020-08-18 03:53
算法学习
子集和问题
深搜
回溯法
4.子集和问题【问题描述】子集和问题的一个实例为。其中,S={x1,x2,…,xn}是一个正整数的集合,c是一个正整数。子集和问题判定是否存在S的一个子集S1,使得子集S1和等于c。【编程任务】对于给定的正整数的集合S={x1,x2,…,xn}和正整数c,编程计算S的一个子集S1,使得子集S1和等于c。【输入格式】由文件subsum.in提供输入数据。文件第1行有2个正整数n和c,n表示S的个数,
格其非心
·
2020-08-18 03:46
装载问题 回溯
深搜
法
2.装载问题【问题描述】有一批共n个集装箱要装上艘载重量为c的轮船,其中集装箱i的重量为wi。找出一种最优装载方案,将轮船尽可能装满,即在装载体积不受限制的情况下,将尽可能重的集装箱装上轮船。【输入格式】由文件load.in给出输入数据。第一行有2个正整数n和c。n是集装箱数,c是轮船的载重量。接下来的1行中有n个正整数,表示集装箱的重量。【输出格式】将计算出的最大装载重量输出到文件load.ou
格其非心
·
2020-08-18 03:46
图的遍历-
深搜
(DFS)和广搜(BFS)
最近为了保研在复习数据结构和算法,想来可以用博客记录一些,以后或许能用的上。首先说一下图的定义。图是一种数据结构,图和树一样可以用二元组表示。它可定义为Graph=(V,R)其中,V={x|x∈datatype},R={VR},VR={(x,y)|P(x,y)∧(x,y∈V)}。在图中,数据元素常称为顶点(Vertex),V是顶点的非空有穷集合;R是边(弧)的有穷集合。也就是说,图就是记录一些点和
kdzc
·
2020-08-18 03:45
算法
各种迷迷迷宫问题
深搜
dfs和广搜bfs做法
三分钟热度又回来了谈到迷宫问题就得提到解决迷宫问题的常见做法,bfs和dfs在处理迷宫问题时,dfs一般用来解决能不能的问题,即从x点能否到达y点,而bfs一般用来解决最少需求的问题,即从x点走到y点最少需要多少步。当然,很多情况下,用bfs和dfs都能解决上述两个问题,就看哪种方法效率高或者说你乐意用哪种方法。成天想什么呢,效率最重要bfs:定义一个队列;起始点加入队列;while(队列不为空)
竒仔
·
2020-08-18 02:21
算法学习记录
【回溯】B028_LQ_完美正方形(换行
深搜
+剪枝)
如果一些边长互不相同的正方形,可以恰好拼出一个更大的正方形,则称其为完美正方形。历史上,人们花了很久才找到了若干完美正方形。比如:如下边长的22个正方形:23467812131415161718212223242627285060如图这样组合,就是一种解法此时,紧贴上边沿的是:6050,紧贴下边沿的是:262817211822阶完美正方形一共有8种右边的组合是另一种:259111617192122
Zilizili.
·
2020-08-18 02:52
#
【回溯】
LeetCode279——完全平方数
617076674/LeetCode原题链接:https://leetcode-cn.com/problems/perfect-squares/题目描述:知识点:广度优先搜索、动态规划思路一:广度优先搜索
深搜
用栈
清風逐尘乀
·
2020-08-18 01:21
LeetCode题解
[vijos 1197] 费解的开关 {
深搜
+递推}
题目https://www.vijos.org/p/1197解题思路先
深搜
出第一行的所有情况(对于每一盏灯都可选或不选),然后递推第一层到第四层,如a[i][j]a[i][j]为0,则点a[i+1][j
心有猛虎|细嗅蔷薇
·
2020-08-18 01:32
数据结构(/堆排序/桶/数)
暴力(/模拟/字符串处理)
上一页
10
11
12
13
14
15
16
17
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他