dfs
Tizzii
这个作者很懒,什么都没留下…
展开
-
CodeForces - 1296 F Berland Beauty dfs暴力枚举
一、内容There are n railway stations in Berland. They are connected to each other by n−1railway sections. The railway network is connected, i.e. can be represented as an undirected tree.You have a map of...原创 2020-02-19 16:31:09 · 468 阅读 · 2 评论 -
Jeremy Bearimy CodeForces - 1281E 贪心
一、内容题意:给定2 * k个点,问选择k对点(每个点都必须选上)进行相连,求出所有路径之和。求出路径之和的最大值和最小值。二、思路最大化路径之和: 首先我们任选2个组件记性相连,如图当我们选择左边的任意2个点相连和右边任意2个相连,如(1,3) (4, 6)。那么可以转化为左边组件和右边组件进行相连。(1,4)(3,6)或者(1,6)(3,4)那么这样相连后, 我们在保存了以前...原创 2019-12-19 11:13:14 · 664 阅读 · 0 评论 -
Two Fairs CodeForces - 1277E dfs
一、内容There are n cities in Berland and some pairs of them are connected by two-way roads. It is guaranteed that you can pass from any city to any other, moving along the roads. Cities are numerated fr...原创 2019-12-15 20:18:45 · 524 阅读 · 2 评论 -
Sudoku POJ - 2676 状压剪枝
一、内容Sudoku is a very simple task. A square table with 9 rows and 9 columns is divided to 9 smaller squares 3x3 as shown on the Figure. In some of the cells are written decimal digits from 1 to 9. The...原创 2019-11-26 20:20:00 · 624 阅读 · 0 评论 -
Ignatius and the Princess II HDU - 1027 全排列
一、内容 Now our hero finds the door to the BEelzebub feng5166. He opens the door and finds feng5166 is about to kill our pretty Princess. But now the BEelzebub has to beat our hero first. feng5166 says,...原创 2019-11-26 18:34:33 · 296 阅读 · 0 评论 -
Digital Square HDU - 4394 dfs + 剪枝
一、内容 Given an integer N,you should come up with the minimum nonnegative integer M.M meets the follow condition: M 2%10 x=N (x=0,1,2,3....) InputThe first line has an integer T( T< = 1000), the ...原创 2019-11-26 18:27:49 · 396 阅读 · 0 评论 -
Maximum Clique HDU - 1530 dfs+dp优化
一、内容题意:找出一个子图,里面所有的点都相互有边,求最多顶点的个数。二、思路简单做法:暴力枚举每一个起点进行dfs,将它作为团的第一个点,然后不断的添加节点,知道不能添加为止。add用来判断子团里面的点是否都能到达新添加的节点。dp优化:dp[i]: 代表【i,n-1】顶点中最大团顶点的个数。我们从n-1开始每次增加一个点来更新dp[],那么可知它必定是单调递减的(从1~n-1)。...原创 2019-11-25 15:46:05 · 472 阅读 · 4 评论 -
生日蛋糕 POJ - 1190
一、内容二、思路三重剪枝第一重:压缩H,R的区间由于H,R必须是整数,所以我们可知第一层的最小R为1,第二层为R,第i层为(m - i + 1),所以当i > 1,R的区间等于【m - i + 1, Ri-1 - 1】,R1的最大值为sqrt(n),因为当H1为1的时候同理: Hi的范围【m - i + 1, H~i - 1~ - 1】, H1的最大值为n。第二重...原创 2019-11-23 11:38:27 · 415 阅读 · 0 评论 -
Oil Deposits HDU - 1241
一、内容 The GeoSurvComp geologic survey company is responsible for detecting underground oil deposits. GeoSurvComp works with one large rectangular region of land at a time, and creates a grid that divi...原创 2019-11-23 11:29:17 · 256 阅读 · 0 评论 -
Prime Ring Problem HDU - 1016
一、内容 A ring is compose of n circles as shown in diagram. Put natural number 1, 2, ..., n into each circle separately, and the sum of numbers in two adjacent circles should be a prime.Note: the numb...原创 2019-11-23 11:20:08 · 467 阅读 · 0 评论 -
Sudoku POJ - 3076 dfs
一、内容请你将一个16x16的数独填写完整,使得每行、每列、每个4x4十六宫格内字母A~P均恰好出现一次。保证每个输入只有唯一解决方案。输入格式输入包含多组测试用例。每组测试用例包括16行,每行一组字符串,共16个字符串。第i个字符串表示数独的第i行。字符串包含字符可能为字母A~P或”-“(表示等待填充)。测试用例之间用单个空行分隔,输入至文件结尾处终止。输出格式对于每个测试用...原创 2019-10-13 18:56:21 · 446 阅读 · 0 评论 -
Find The Multiple POJ - 1426
一、内容给定一个正整数n,请编写一个程序来寻找n的一个非零的倍数m,这个m应当在十进制表示时每一位上只包含0或者1。你可以假定n不大于200且m不多于100位。提示:本题采用Special Judge,你无需输出所有符合条件的m,你只需要输出任一符合条件的m即可。Input输入包含多组数据,每组数据仅一行,只包含一个正整数n (1 <= n <= 200).Output对于...原创 2019-10-09 21:20:22 · 278 阅读 · 0 评论 -
dfs例题
一、内容给你 n 张扑克牌,保证这 n 张来自于同一副。你可以打若干次牌,第一次可以打任意数字,之后每次打的数字,但必须是之前打过的数字之和的约数。问是否存在一种打牌方案,使得可以打出所有牌,输出方案。二、思路倒着进行搜索,因为当和很大的时候能选择的牌就比较少,这样最开始的选择会减少,进行剪枝。三、代码#include <cstdio>#include <stdl...原创 2019-09-28 23:04:25 · 429 阅读 · 0 评论 -
埃及分数 迭代加深搜索
一、内容1288 埃及分数题目描述 Description在古埃及,人们使用单位分数的和(形如1/a的, a是自然数)表示一切有理数。 如:2/3=1/2+1/6,但不允许2/3=1/3+1/3,因为加数中有相同的。 对于一个分数a/b,表示方法有很多种,但是哪种最好呢? 首先,加数少的比加数多的好,其次,加数个数相同的,最小的分数越大越 好。 如: 19/45=1/3 + 1/12 + 1...原创 2019-09-29 10:38:25 · 523 阅读 · 0 评论 -
Vijos 岳麓山上打水 迭代加深搜索 + 背包
一、内容岳麓山上打水二、思路由于选择桶的数量以最小的开始,所以以1层开始迭代,对所有的捅进行排序一下,这样如果找到一组结果那必然是最优解。w数组里面保存桶的容积,然后进行一次完全背包即可。若符合要求进行输出结果。三、代码#include <cstdio>#include <algorithm>#include <cstring>#defin...原创 2019-09-29 11:45:31 · 369 阅读 · 0 评论 -
POJ - 3134 迭代加深搜索
一、内容题意: 给定一个n, 问最少多少步能够从x1凑成xn,可以进行2种操作,乘以或者除以以前获得过得xi 。二、思路由于1000以内的数最多10多步就能够凑出结果,所以考虑用迭代加深搜索。从0开始进行枚举,若找到一个结果返回剪枝:判断一个数后面能不能凑出, 假设每次都乘以得出的数,那么就是 1 <<(limit - h) 已经的出的x的系数*,若最大的数也不能大于n,那么...原创 2019-09-29 15:13:14 · 405 阅读 · 0 评论 -
洛谷 P1731 生日蛋糕 dfs + 剪枝
一、内容二、思路三重剪枝第一重:压缩H,R的区间由于H,R必须是整数,所以我们可知第一层的最小R为1,第二层为R,第i层为(m - i + 1),所以当i > 1,R的区间等于【m - i + 1, Ri-1 - 1】,R1的最大值为sqrt(n),因为当H1为1的时候同理: Hi的范围【m - i + 1, H~i - 1~ - 1】, H1的最大值为n。第二重...原创 2019-09-29 16:33:14 · 425 阅读 · 0 评论 -
UVA307 Sticks dfs + 剪枝
一、内容二、思路剪枝1:从最大的小棒值开始拼凑,若拼凑的长度大于sum/2代表只能将所以小棒拼凑成一根。剪枝2:由于在题目给出的小棒可能重复,所以在搜索的过程中,若一根小棒无法拼凑,那么接下来与它长度相同的小棒都不能用上。剪枝3:将数组排序,从最大的小棒开始选取,这样可以减少递归次数。剪枝4:若拼凑成一个木条时失败,那么这个长度就一定无法拼完。比如拼长度为7的木...原创 2019-10-01 22:26:36 · 451 阅读 · 0 评论 -
算法竞赛进阶指南 --- 小猫爬山 dfs
一、内容翰翰和达达饲养了N只小猫,这天,小猫们要去爬山。经历了千辛万苦,小猫们终于爬上了山顶,但是疲倦的它们再也不想徒步走下山了(呜咕>_<)。翰翰和达达只好花钱让它们坐索道下山。索道上的缆车最大承重量为W,而N只小猫的重量分别是C1、C2……CN。当然,每辆缆车上的小猫的重量之和不能超过W。每租用一辆缆车,翰翰和达达就要付1美元,所以他们想知道,最少需要付多少美元才能把...原创 2019-10-04 19:42:49 · 669 阅读 · 0 评论 -
AcWing 166. 数独
一、内容数独是一种传统益智游戏,你需要把一个9 × 9的数独补充完整,使得图中每行、每列、每个3 × 3的九宫格内数字1~9均恰好出现一次。请编写一个程序填写数独。输入格式输入包含多组测试用例。每个测试用例占一行,包含81个字符,代表数独的81个格内数据(顺序总体由上到下,同行由左到右)。每个字符都是一个数字(1-9)或一个”.”(表示尚未填充)。您可以假设输入中的每个谜题都只有一个...原创 2019-10-08 11:59:41 · 421 阅读 · 0 评论 -
棋盘问题 POJ - 1321
一、内容在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。Input输入含有多组测试数据。每组数据的第一行是两个正整数,n k,用一个空格隔开,表示了将在一个n*n的矩阵内描述棋盘,以及摆放棋子的数目。 n <= 8 , k <=...原创 2019-10-08 21:42:11 · 416 阅读 · 0 评论 -
P1434 [SHOI2002]滑雪 记忆化搜索
一、内容题目描述Michael喜欢滑雪。这并不奇怪,因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你。Michael想知道在一个区域中最长的滑坡。区域由一个二维数组给出。数组的每个数字代表点的高度。下面是一个例子:1 2 3 4 516 17 18 19 615 24 25 20 7...原创 2019-09-25 20:27:49 · 348 阅读 · 0 评论