随笔分类 -  暴力

摘要:1、遍历全排列 法一:STL next_permutation(a,a+4); 法二: 2、排列组合 例如求n个数中取5个的全排列,只需把上面if中end改为5+1 3、组合(利用二进制数,妙得很) 阅读全文
posted @ 2018-03-12 19:46 柳暗花明_liu 阅读(230) 评论(0) 推荐(0)
摘要:stl提供了权排列算法,以后暴力举例就方便多啦 文末有手动求,按字典序排序的全排列的第n个排列,的求法 next_permutation(a,a+4); 检测数组的a[0]到a[3],如果不是“完全倒序”(如:4,3,2,1),就继续执行全排列 prev_permulation(a,a+4); 与上 阅读全文
posted @ 2018-03-12 18:49 柳暗花明_liu 阅读(236) 评论(0) 推荐(0)
摘要:题目描述: 少林寺的宝贝“少林神棍”断成了n根长短不一的小木棒,现在要把这些小木棒重新拼若干跟等长的棍子,求棍长最短是多少? 原题地址 先放上从这道题应该学到的经验: 1,要选择简合适的搜索顺序,如果一个人物分成多步,要优先尝试可能性少的。 (优先尝试长的木棒) 2,要发现表面上的不同,实质上等效的 阅读全文
posted @ 2018-03-07 20:12 柳暗花明_liu 阅读(606) 评论(0) 推荐(0)
摘要:题目描述 递归函数中为什么最后有一个 =false? 这个问题一开始我胡思乱想了很多,请教了大佬,在自己也想了想,其实答案就只是:要把它标记为false,因为别的路径可能还会访问到它 这种写法在大佬看来是要超时的,没有超时的原因在于深色高亮部分代码: if(step>min) return; 另外, 阅读全文
posted @ 2018-02-26 11:38 柳暗花明_liu 阅读(243) 评论(0) 推荐(0)
摘要:题目描述 跟关灯问题相似的地方是,第一眼都很懵逼,还是看了视频之后照着视频的思路过的;毕竟自己来的话效率奇低。 分析: 首先这是一道枚举问题。 枚举:就是从可能的解的集合中一一列举各个元素,判断其是否符合问题要求,符合的就是问题的解。 枚举问题的三个关键是: 一:给出解空间,建立简洁的数学模型。 二 阅读全文
posted @ 2018-02-25 13:40 柳暗花明_liu 阅读(188) 评论(0) 推荐(0)
摘要:题目陈述 这道题乍一看不会做,但听完老师的思路就变得很简单: 虽然情况很多似乎列举不完,但是我们可以只列举第一行的所有情况,然后推出后面的所有情况,这下这道题就有了思路 我自己写的时候没有用到下面这两句代码(也即在完整代码中高亮标记的那两句) 这两句代码非常巧妙,我感觉算是神来之笔~ 另外注意代码中 阅读全文
posted @ 2018-02-24 20:54 柳暗花明_liu 阅读(197) 评论(0) 推荐(0)