
暴力求解
萧瑟1
这个作者很懒,什么都没留下…
展开
-
HDU - 1043 Eight 打表+bfs+康托扩展
题目:The 15-puzzle has been around for over 100 years; even if you don't know it by that name, you've seen it. It is constructed with 15 sliding tiles, each with a number from 1 to 15 on it, and all p...原创 2019-03-04 21:36:13 · 215 阅读 · 0 评论 -
“浪潮杯”山东省第九届ACM大学生程序设计竞赛(感谢山东财经大学) Anagram
Problem DescriptionOrz has two strings of the same length: A and B. Now she wants to transform A into an anagram of B (which means, a rearrangement of B) by changing some of its letters. The only op...原创 2019-03-14 21:35:14 · 229 阅读 · 0 评论 -
UVa 1601 The Morning after Halloween 双向bfs
题目:在一个网格w*h(w,h<=16)中有n个小写字母(代表鬼),要求它们分别移动到对应的大写字母里,每步可以有多个鬼同时移动,但每步结束后任意两个鬼不能占同一个位置,也不能在一步之内交换位置。思路:这题目如果纯暴力搜的话会超时,因为每步都有5^3种情况。题目中有个条件是任何一个2*2的子网格中至少有一个障碍物,所以我们可以先建个图,将图中每个点能走的点建成边,这样搜索的时...原创 2019-03-07 07:40:32 · 162 阅读 · 0 评论 -
Uva 1152 4 Values whose Sum is 0 二分
题目:给出4个n(1<=n<=4000)元素集合A,B,C,D,要求分别从中选取一个元素a,b,c,d使得a+b+c+d=0。思路:a+b=-(c+d)。将(a+b)的和(c+d)的和全部枚举出来,然后枚举(a+b)的和利用二分查找c+d中符合的元素。代码如下:#include <cstdio>#include <cstring>#...原创 2019-03-08 21:06:27 · 181 阅读 · 0 评论 -
UVA - 140 Bandwidth
题意:给出一个n(n<=8)个结点的图G和一个结点的排列,定义结点i的带宽b(i)为i和相邻结点在排序中的最远距离,而所有b(i)的最大值就是整个图的带宽。给定图G,求出让带宽最小的结点排序。输入:A:FB;B:GC;D:GC;F:AGH;E:HD#输出:A B C F G D H E -> 3思路:如果直接枚举全序列的话,效率不高。所以需要剪枝。(...原创 2019-03-03 12:51:03 · 194 阅读 · 0 评论 -
Hdu 1401 Fire Net
题目:Suppose that we have a square city with straight streets. A map of a city is a square board with n rows and n columns, each representing a street or a piece of wall.A blockhouse is a small castl...原创 2019-03-06 08:42:01 · 189 阅读 · 0 评论 -
UVA - 129 Krypton Factor
题意:一个字符串,若包含两个连续的相同子串,则为容易的串,如“ABCDBCDE”,否则称为困难的串,给定n和L,输出由前L个大写字母组成的字典序第n小的困难的串。思路:dfs,每当枚举的字符串是一个复杂字符串时,进入下一个dfs,直到dfs层数到了n时,输出字符串。判断是否为困难字符串的方法,因为dfs的上一个字符串一定为复杂字符串,所以,只需要判断它的后缀字符串是否与相邻的相等即可。...原创 2019-03-02 21:18:28 · 202 阅读 · 0 评论 -
UVA - 208 Firetruck 并查集+dfs
题目:输入一个n(n<=20)个结点的无向图以及某个节点k,按照字典序从小到大排序输出从结点1到结点k的所有路径,要求结点不能重复经过。注意:要事先判断1到k是否连通。思路:判断连通可以通过并查集判断它们是否在同一个集合中。然后就是dfs找路径了。代码如下:#include <cstdio>#include <cstring>#i...原创 2019-03-05 20:12:43 · 191 阅读 · 0 评论 -
UVA - 10976 暴力枚举
题意:给定正整数k(1<=k <= 10000),找出所有正整数 x>= y, 使得1/k = 1/x + 1/y.思路:首先,x,y肯定为整数,所以x,y的取值范围不能小于k,即左区间为k+1,因为x>=y,1/x<=1/y,即1/k-1/y<=1/y,所以,1/k<=2/y,所以2k>=y,所以y的取值范围就出来了,[k+1,2*k]...原创 2019-03-02 10:43:00 · 209 阅读 · 0 评论 -
UVa 725 - Division
题意: 输入n个元素组成的序列S,找出一个乘积最大的连续子序列。如果这个最大的乘积不是正数,输出0(表示无解)。1<=n<=18,-10<=Si<=10。每一个案例之间用空白行分隔,案例输出要求输出"Case #M: The maximum product is P.",其中M为案例号,P为乘积值。案例: Sample Input...原创 2019-03-02 10:05:37 · 141 阅读 · 0 评论 -
UVA - 725 Division 暴力
题目:给你一个数字n,用0~9,10个数字组成两个五位数,使得他们的商为n,按顺序输出所有结果。思路:我先将符合题目条件的五位数都求出来了,然后枚举符合题目条件的除数,然后求出被除数,看看被除数是否符合条件。代码写的很啰嗦,其实可以开个100000的数字,将符合条件的数置为1就行。代码如下:#include <cstdio>#include <cstr...原创 2019-03-02 09:22:56 · 169 阅读 · 0 评论 -
zoj 2952 Find All M^N Please 暴力
题目:Recently, Joey has special interest in the positive numbers that could be represented as M ^ N (M to the power N), where M and N are both positive integers greater than or equal to 2. For example...原创 2019-03-27 14:37:14 · 196 阅读 · 0 评论