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
ACM-暴力求解法
ACM-
直方图最大面积-Largest Rectangle in Histogram
LargestRectangleinHistogram题目描述:Givennnon-negativeintegersrepresentingthehistogram’sbarheightwherethewidthofeachbaris1,findtheareaoflargestrectangleinthehistogram.Aboveisahistogramwherewidthofeachbari
e01014165
·
2016-08-20 21:12
ACM
暴力求解法
算法竞赛入门经典2读书笔记 (附POJ 1321)
简单枚举 讲一下自己的理解,所谓的枚举,一般不能纯暴力枚举的,应该先经过算法的优化,可以利用公式、题目的套路、已知算法进行优化,从而解决问题,目的是在规定的时间内完成。好像算法本来就是对各种暴力的优化,学习算法就是不断的优化优化。想起来C语言老师说过的,“不断地回过头来看自己的代码,用现有知识进行改进,你会发现,收获的远比想象得多”,赞。725-Division仅仅枚举01234到98765,然后
huatian5
·
2016-05-29 15:00
算法
读书笔记
uva
[置顶] 【C语言】 左旋字符串
实现一个函数,可以左旋字符串中的k个字符 方法一:开辟另一个数组,先把第k+1后面的字符写入这个数组中,再把要左旋的k个字符写进去 (
暴力求解法
) 实现如下: #include #include #
wbq1480
·
2016-05-26 12:00
ACM-
–圆–-HDOJ 1065 --I Think I Need a Houseboat--水
HDOJ题目地址:传送门IThinkINeedaHouseboatTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):11934 AcceptedSubmission(s):3361ProblemDescriptionFredMapperisconsider
qq_26891045
·
2016-05-19 21:00
ACM
think
I
I
hdoj
水
a
need
Hou
1065
ACM-
–模拟打印–-湘大OJ 1086--菱形--水
湘大oj地址:http://202.197.224.59/OnlineJudge2/index.php/Problem/read/id/1086菱形时间限制:1000 ms | 内存限制:65536KBDescription 小明现在是湘潭大学10级计算机系的学生。他的C语言学的还算可以,但是今天老师布置的一道课后作业题却把他难住了。题目的意思是要在一个N*N(N为奇数)的菱形方格
qq_26891045
·
2016-05-14 18:00
ACM
菱形
水
1086
湘大OJ
1086
【Coding算法导论】第4章:最大子数组问题
(二)问题求解本题想到了两个思路:
暴力求解法
和分治法。前者就不多说了,本文主要讨论分治法。分治法的大致思路:对于A[low,high]
terence1212
·
2016-05-04 20:00
C++
算法导论
ACM-
入门经典:函数和递归
例题4-1古老的密码:UVa1339给定两个长度相同且不超过100的字符串,判断可否将其中一个字符串各个字母重拍,然后对26个字母做一个一一映射,使得两个字符串相同。例如:输入JWPUDJSTVP重排后得到WJDUPSJPVT,然后子母映射(B-A,C-B,…Z-Y)可得VICTORIOUS。输入两个字符,输出YES或者NO//UVa1339AncientCipher //RujiaLiu #in
mijian1207mijian
·
2016-05-03 23:00
ACM-
入门经典:数组和字符串
逆序输出/*逆序输出*/ #include #include usingnamespacestd; #definemaxn105 inta[maxn]; intmain() { intx,n=0; while(scanf("%d",&x)==1) a[n++]=x; for(inti=n-1;i>=0;i--) printf("%d",a[i]); printf("%d\n",a[0]);/
mijian1207mijian
·
2016-04-24 15:00
算法竞赛入门经典(第二版)-刘汝佳-第七章
暴力求解法
习题(2/18)
说明本文是我对第七章18道习题的练习总结,建议配合紫书——《算法竞赛入门经典(第2版)》阅读本文。另外为了方便做题,我在VOJ上开了一个contest,欢迎一起在上面做:第七章习题contest如果想直接看某道题,请点开目录后点开相应的题目!!!习题习7-1UVA208消防车题意输入一个n(n≤20)个结点的无向图以及某个节点k,按照字典序从小到大顺序输出从节点1到节点k的所有路径,要求结点不能重
thudaliangrx
·
2016-03-16 13:00
算法
ACM
uva
算法竞赛入门经典
算法竞赛入门经典(第二版)-刘汝佳-第七章
暴力求解法
例题(6/15)
说明本文是我对第七章15道例题的练习总结,建议配合紫书——《算法竞赛入门经典(第2版)》阅读本文。另外为了方便做题,我在VOJ上开了一个contest,欢迎一起在上面做:第七章例题contest如果想直接看某道题,请点开目录后点开相应的题目!!!例题例7-1UVA725除法题意输入正整数n,按从小到大的顺序输出所有形如abcde/fghij=n的表达式,其中a~j恰好为数字0~9的一个排列(可以有
thudaliangrx
·
2016-03-16 13:00
算法
uva
算法竞赛入门经典
Harmonic Number(
暴力求解法
)
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=109329#problem/D;题意:就是求解HarmonicNumbe值即求 中的Hn;分析:本题重在打表,因为个数很大(1亿),所以要分成小份进行存储(好不麻烦);剩下的就可以循环很少次数了。假设分成2500000分设为数组s,就是每隔40个数记录一次,接下来给出x如果是4
qq_27599517
·
2016-03-15 21:00
数学
UVA725 Division (
暴力求解法
入门)
uva725Division Writeaprogramthatfindsanddisplaysallpairsof5-digitnumbersthatbetweenthemusethedigits0through9onceeach,suchthatthefirstnumberdividedbythesecondisequaltoanintegerN,where2 #include #includ
u011613367
·
2016-03-10 16:00
uva
暴力求解法
acm及蓝桥杯中的【
暴力求解法
】(1)(2.14)
一、简单枚举【例题1】:输入一个整数n,按从小到大的顺序输出所有形如abcde/fghij=n的表达式,其中a~j恰好为数字0~9的一个排列(可以有前导0),2#includeboolvis[10];//【visit数组】用下标判断数字是否已经被访问过;charstr[15];//vis里的数字是按照0123456789的顺序,str是按照a和b给定的顺序boolcheck(inta,intb){
Cambridge_blue9
·
2016-02-14 17:09
acm
ACM-
最小生成树之畅通project——hdu1863
***************************************转载请注明出处:http://blog.csdn.net/lttree***************************************畅通projectTimeLimit:1000/1000MS(Java/Others) MemoryLimit:32768/32768K(Java/Others)Tot
phlsheji
·
2016-01-31 08:00
LeetCode-1.Two Sum
题目大意:找出数组中和等于特定数的两个数,并返回这两个数在数组中的序数,即它们分别是数组中的第几个数首先看完题目,脑海里第一个想到的就是
暴力求解法
,用两层for循环,遍历数组中所有的两个数的和,最终得出结果
u010010428
·
2016-01-19 20:00
ACM-
超级楼梯
ProblemDescription有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第M级,共有多少种走法? Input输入数据首先包含一个整数N,表示测试实例的个数,然后是N行数据,每行包含一个整数M(1>n; intM; ans[1]=1; ans[2]=1; for(inti=3;i>M; cout<
gzj_1101
·
2015-11-15 09:00
算法
递归
ACM-
简单题之Factorial——poj1401
转载请注明出处: http://blog.csdn.net/lttree Factorial Time Limit: 1500MS Memory Limit: 65536K Total Submissions: 13993 Accepted: 8678 Description The
·
2015-11-13 11:31
ACM
暴力求解法
之 枚举排列
&nbs
·
2015-11-13 10:57
枚举
ACM-
简单题之Least Common Multiple——hdu1019
***************************************转载请注明出处: http://blog.csdn.net/lttree*************************************** Least Common Multiple Time Limit: 2000/1000 MS (Java/Others) &n
·
2015-11-12 19:42
ACM
ACM-
康托展开+预处理BFS之魔板——hdu1430
魔板 Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 1679 Accepted Submission(s): 354 Problem De
·
2015-11-12 16:40
ACM
C-最长回文子串(2)
在上一篇的文章中说到了,最长回文子串的问题,并且提到了基本的解决办法,即
暴力求解法
。效率O(N^3) 中心法求最长回文子串 我们知道回文字符串是以字符串中心对称的,如abba以及aba等。
·
2015-11-10 22:17
回文
【C语言】 左旋字符串
实现一个函数,可以左旋字符串中的k个字符 方法一:开辟另一个数组,先把第k+1后面的字符写入这个数组中,再把要左旋的k个字符写进去 (
暴力求解法
) 实现如下: #include #include #
Vs吕小布
·
2015-11-04 21:39
字符串
C语言
include
元素
【C语言】 左旋字符串
实现一个函数,可以左旋字符串中的k个字符 方法一:开辟另一个数组,先把第k+1后面的字符写入这个数组中,再把要左旋的k个字符写进去 (
暴力求解法
) 实现如下: #include #include #
Vs吕小布
·
2015-11-04 21:39
字符串
C语言
include
元素
【算法学习笔记】14.
暴力求解法
03 回溯法01 N皇后和素数环
回溯法的含义 百度百科 回溯法(探索与回溯法)是一种选优搜索法,又称为试探法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再走的技术为回溯法,而满足回溯条件的某个状态的点称为“回溯点”。 在包含问题的所有解的解空间树中,按照深度优先搜索的策略,从根结点出发深度探索解空间树。当探索到某一结点时,要先判断该结点是否包含问
·
2015-11-02 15:46
学习笔记
Acm-
群赛 Mengzhu 二分查找
这题大概题意是这样的,给定log2(x + y) = A 以及 log2(x - y) = B,现在要求出log2(x)是多少。首先这题中给定的A、B的范围是骗人的,实际上A、B的差值不能够大于1024,否则就不能够使用pow函数,不知道这种方法是不是错了。 首先有log2(x) = Min(A, B) - 1 + log2(2^|A-B|+1)那么我们就能够估计这个值的范围是[Mi
·
2015-10-31 11:21
二分查找
【算法学习笔记】13.
暴力求解法
01 枚举排列
所谓
暴力求解法
,大意 应该是根据提议分析出的所有可能的情况(优化过的研究域)来一一研究,得到最终结果。 第一节呢就是枚举排列。 这里的排列指的是一个集合的元素中根据字典序进行排列。
·
2015-10-31 11:24
学习笔记
【算法学习笔记】15.
暴力求解法
04 回溯法02 困难的串
发现好久没来更新了,开学之后各种杂事,好久都没学习算法了,还好最近马上要学习计导里有关算法的部分了。明天还要预习一下,今天先暂时把上次写完的困难的串(“好久之前的事”)更新一下,再在十一假期中强烈补充算法知识。 困难的串仍然是回溯法的部分,既然是回溯法那么就要DFS然后及时返回。 题目:如果一个字符串包含两个相邻的重复子串,则称它是”容易的串“,其他串成为”困难
·
2015-10-31 11:24
学习笔记
【算法学习笔记】14.
暴力求解法
02 子集生成的三种方法
子集的生成 实例 input 4 output 1 1 2 1 2 3 1 2 3 4 1 2 4 1 3 1 3 4 1 4 2 2 3 2 3 4 2 4 3 3 4 4 请按任意键继续. . .(第一行是空行表示空集) 第一种方法:增量构造法 顾名思义,就是要用不断在已有子集的基础上不断增加新元素一直到无法继续增加时为止(这种方法的递归边界
·
2015-10-31 11:24
学习笔记
【算法学习笔记】16.
暴力求解法
04 回溯法03 剪枝法 带宽
在之前的 N 皇后和困难的串问题中,回溯法都是在解决可行性约束。换一句话说,对于回溯点的判断是用来验证此点是否合法。 但是在一些优化问题的求解过程中,每一个点都是合法的,所以我们要进行剪枝。 1.先得到一个解。(一般情况下不是最优解,实现细节:用一个极大的数先作为结果。) 2.在回溯的过程中,判断继续进行是否肯定超过最优解。若是,则剪去。 例子:UVa 140 题意 &nb
·
2015-10-31 11:23
学习笔记
【算法学习笔记】18.
暴力求解法
06 隐式图搜索2 八数码问题 未启发
<p>/* 因为注释很详细,就直接上代码了,需要注意的是,用了白书的三种方法来进行判重,其中最快捷的方法还是stl的set,还有哈希技术涉及到了多个链表的处理,还有一种就是编码解码技术,这个需要找到一个非常好的函数才能达到一一对应。而哈希表不需要一一对应(因为有链表)。</p><div>*/</div>// // main.cpp // Ei
·
2015-10-31 11:23
学习笔记
【算法学习笔记】17.
暴力求解法
05 隐式图搜索1 迭代加深搜索 埃及分数
题目 http://codevs.cn/problem/1288/ 卧槽。整了一天还是没全 AC 后面多层的时候不知道问题出在哪里了,跑不出来。 这个题的难点在于解答树的每一层都是无穷多,这导致我们必须要强烈的剪枝!否则绝对没有办法跑完。由于题目的特殊性(拆分),所以我们要尽量剪枝,估计是因为我这个剪的还不够,一到难题就不行了。还有3/997 算不出来的原因有点特别。以后再仔细想想。
·
2015-10-31 11:23
学习笔记
ACM-
博弈论
有一种很有意思的游戏,就是有物体若干堆,可以是火柴棍或是围棋子等等均可。两个人轮流从堆中取物体若干,规定最后取光物体者取胜。这是我国民间很古老的一个游戏,别看这游戏极其简单,却蕴含着深刻的数学原理。下面我们来分析一下要如何才能够取胜。 (一)巴什博奕(Bash Game):只有一堆n个物品,两个人轮流从这堆物品中取物,规定每次至少取一个,最多取m个。最后取光者得胜。 &nb
·
2015-10-31 10:27
ACM
ACM-
简单的主题Ignatius and the Princess II——hdu1027
转载请注明出处:http://blog.csdn.net/lttree Ignatius and the Princess II Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 4436&n
·
2015-10-27 15:08
ACM
ACM-
简单的主题Factorial——poj1401
明出处: http://blog.csdn.net/lttree Factorial Time Limit: 1500MS Memory Limit: 65536K Total Submissions: 13993 Accepted: 8678 Description The most
·
2015-10-23 08:23
ACM
ACM-
光滑最小生成树project——hdu1863
***************************************转载请注明出处: http://blog.csdn.net/lttree*************************************** 畅通project Time Limit: 1000/1000 MS (Java/Others) Memory Limi
·
2015-10-21 12:59
project
UVa-140 - Bandwidth
决定跳过数据结构那章,来看
暴力求解法
。暴力这章之前也看过,可是前几天做了一道POJ的暴力题,却没有想起来自己曾经在书上看过类似的暴力枚举解法,所以决定再仔细看一遍。
·
2015-10-21 11:57
width
ACM-
括号匹配问题
对ACM仰慕已久,无奈今天才开始。好吧,遇到的第二个题目就把我难到了。(实话是第一个)进入正题,下面Copy出题目: 现在,有一行括号序列,请你检查这行括号是否配对。输入第一行输入一个数N(0解析到最小解;2.消除-->匹配以后我就不用管了。===========================================================================在括号匹
ply616
·
2015-09-10 01:00
算法入门经典习题2-10
令其为a,b,c.使的a:b:c=1:2:3我的方法:
暴力求解法
写了三个函数, istrue()----->判断一个三位数各位是否相同,不相同返回1 istrue1()------>判断一个数与一个三位数的各位是否相同
qq_23100787
·
2015-08-24 20:00
算法
函数
C语言
算法竞赛入门经典:第七章
暴力求解法
7.20八数码问题之stl
/* 八数码问题之stl: 1setvis,这样只需要调用if(vis.count(s))来判断s是否在集合vis中,并用vis.insert(s)加入集合,用vis.remove(s)从集合中移除s。 问题:并不是所有类型的State都可以作为set中的元素类型。set的元素必须定义"vis,这样只需要调用if(vis.count(s))来判断s是否在集合vis中,并用vis.insert
qingyuanluofeng
·
2015-08-18 09:00
算法竞赛
算法竞赛入门经典:第七章
暴力求解法
7.18八数码问题之哈希去重
/* 八数码问题之哈希去重: 输入: 264137058 815736402 输出: 31 */ /* 关键: 1哈希:把结点变成整数,但不必是一一对应。设计一个哈希函数h(x),然后将任意结点x映射到某个给定的范围[0,M-1]的整数即可,其中M是程序员根据可用内存大小 自选的。不同结点哈希值相同时,用链表组织哈希值相同的链表。 2iSum=10*iSum+s[i];
qingyuanluofeng
·
2015-08-18 09:00
算法竞赛
算法竞赛入门经典:第七章
暴力求解法
7.18 广度优先搜索之八数码问题
/* 八数码问题: 编号为1~8的8个正方形滑块被摆成3行3列(有一个格子空留),如图所示。每次可以把与空格相邻的滑块(有公共边才算相邻)移到空格中,而它原来的位置就称为了 新的空格。给定初始局面和目标局面(用0表示空格格),你的任务是计算出最少的移动步数。如果无法达到目标局面,则输-1. 264815 137736 5842 思路: 1用广度优先搜索,难道得用9个位置剪枝才能
qingyuanluofeng
·
2015-08-18 09:00
广度优先搜索
算法竞赛入门经典:第七章
暴力求解法
7.18倒水问题
/* 倒水问题: 有装满水的6升杯子、空的3升杯子和一升杯子,3个杯子中都没有刻度。在不使用其他道具的情况下,是否可以量出4升的水呢? 输入: 6(满杯水所在的刻度)31 输出: (6,0,0)->(3,3,0)->(3,2,1)->(4,2,0) 思路: 这与倒可乐是一个问题,关键在与状态的搜索。 1采用广度优先搜索算法 2当前状态的下一状态的方法为:(a,b,c) 状
qingyuanluofeng
·
2015-08-18 09:00
广度优先搜索
算法竞赛入门经典:第七章
暴力求解法
7.16埃及分数
/* 埃及分数: 使用单位分数的和(如1/a,a是自然数)表示一切有理数。例如2/3=1/2+1/6,但不允许2/3=1/3+1/3,因为在加数中不允许有相同的。 对于一个分数a/b,表示方法有很多种,其中加数少的比加数多的号,如果加数个数相同,则最小的分数越大越好。例如,19/45=1/5+1/6+1/18是最优方案。 输入整数a,b(0=1/em,确定em的下界 若设定深度上限为d,
qingyuanluofeng
·
2015-08-18 09:00
算法竞赛
算法竞赛入门经典:第七章
暴力求解法
7.13困难的串
/* 困难的串: 如果一个字符串包含两个相邻的重复子串,则称它是“容易的串”,其他串成为“困难的串”。例如:BB,ABCDACABCAB,ABCDABCD都是容易的,而D、DC、ABDAB、CBABCBA 都是困难的。 输入正整数n和L,输出由前L个字符组成的、字典序第n个小的困难的串。例如,当L=3时,前7个困难的串分别为:A、AB、ABA、ABAC、ABACA、ABACAB、ABACA
qingyuanluofeng
·
2015-08-18 09:00
算法竞赛
算法竞赛入门经典:第七章
暴力求解法
7.11回溯法
/* 回溯法: 排列生成和子集枚举的两种方法:1递归,2遍历 遍历:优点:简单,缺点:增大枚举量,检验所有解 回溯法:含义:递归时,将生成+检查过程结合 适合:问题分成步骤,步骤采用不太多选择 回溯算法=递归枚举算法:分成若干步骤递归,若某一步无解,返回上一级调用,称为回溯。 八皇后问题: 在棋盘上放置8个皇后,使得她们互不攻击,此时每个皇后的攻击范围为同行同列和同对角线,
qingyuanluofeng
·
2015-08-18 09:00
算法竞赛
算法竞赛入门经典:第七章
暴力求解法
7.10 二进制法
/* 二进制法: 用二进制表示{0,1,2,...,n-1}的子集S:从右往左第i位表示元素i是否在集合S中。1表示在。 异或特点:开关性。两次异或后相当于没有B^B=0,A^B^B=A。 空集:0,全集:2^n-1.ALL_BITS=(1 #include voidprintSubset(intiElem,intn)//打印{0,1,...,n-1}中iElem的子元素 {
qingyuanluofeng
·
2015-08-18 09:00
算法竞赛
算法竞赛入门经典:第七章
暴力求解法
7.9位向量法
/* 位向量法: 构造一个位向量B[i],而不是直接构造子集A本身,其中B[i]=1当且仅当i在子集A中。 注意:此题不是求排列,而是求子集,这里n个元素有2^n-1个子集,因为空集无法打印出来 输入: 3 输出: 012 01 02 0 12 1 2 */ /* 关键: 1if(pos==n)//凡是递归,先写递归出口,否则若写在后面,很容易漏掉,所有元
qingyuanluofeng
·
2015-08-18 09:00
算法竞赛
算法竞赛入门经典:第七章
暴力求解法
7.8子集生成
/* 子集生成: 给定一个集合,枚举它所有可能的子集。讨论范围:没有重复元素。 增量构造法:一次选出一个元素放到集合中: */ #include #include #defineMAXSIZE1024 //每次递归调用都输出当前集合,递归边界也不需要显式确定--如果无法继续添加元素,就不再递归。 voidprintPermutation(intn,int*iA
qingyuanluofeng
·
2015-08-18 09:00
算法竞赛
算法竞赛入门经典:第七章
暴力求解法
7.7解答树
/* 解答树: 以下的树显示了排列递归函数的调用过程。 (****) (1***)(2***)(3***)(4***) (12**)(13**)(14**)(21**)(23**)(24**)(31**)(32**)(34**)(41**)(42**)(43**) (123*)(124*) (1234) 特点: 第0层有n个儿子,第一层各节点各有n-1个儿子,第二层各有n-2
qingyuanluofeng
·
2015-08-18 09:00
解答树
算法竞赛入门经典:第七章
暴力求解法
7.6可重复的排列
/* 生成可重集得到排列: 把问题改成:输入数组P,并按字典序输出数组A各元素的所有全排列,则需要对上述程序进行修改--把P加到printPermutation的参数列表中,然后把 代码中的if(iArr[i]==j)和if(A[pos]==j)改成if(iArr[i]==P[j])和iArr[pos]=P[j] bug1:如果数组中是重复的元素111的话,因为禁止出现重复,造成错误
qingyuanluofeng
·
2015-08-18 09:00
排列
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
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
其他