ACM算法总结
文章平均质量分 77
zhengxu001
这个作者很懒,什么都没留下…
展开
-
在ACM中Java关于大数的一些相关操作
转自 :http://blog.csdn.net/jiahui524/article/details/6671593BigInteger和BigDecimal可以说是acmer选择java的首要原因。函数:add, subtract, divide, mod, compareTo等,其中加减乘除模都要求是BigInteger(BigDecimal)和BigInteger(BigDe转载 2012-09-26 22:09:36 · 615 阅读 · 0 评论 -
【专题】两种不同的母函数
母函数又叫生成函数,是很吊的一种函数,半年之前与之有过一次邂逅,现在再次相遇便把握机会总结一下,也希望自己能够更深入的了解他。下面大多数列子和题目都来自互联网! 在我介绍母函数之前,先推荐一篇我很喜欢的文章:http://www.wutianqi.com/?p=596。我就是看着这片文章弄懂的母函数。第一种母函数的应用:生成函数最绝妙的是,某些生成函数可以原创 2012-10-27 17:02:18 · 1394 阅读 · 0 评论 -
[专题]暴力之简单枚举
暴力之简单枚举优点:算法简单,容易编程实现,正确性易证明缺点:速度慢,时间复杂度高重点,对于题目的分析,寻找优化的方法。对于枚举法,应该要权衡枚举的时间代价和所得到的信息量的关系。例如(黑书思考题1.2.6)离散函数,给定一个离散函数,为集合{1,2.....n},取值为-2^32--2^32,找出函数图像上两个点,是的函数在这两点之间的点都在连线的下方,且转载 2012-10-22 23:01:19 · 727 阅读 · 0 评论 -
HDOJ 1060 / HDOJ 1061/ HDOJ 1568 总结(如何求大数最左边最右边的数)
HDOJ 1060 / HDOJ 1568 这种题目就是再说一个问题:如何求一个大数num的最左边的一个或几个数字? 其实这两题的解法都是一样的,给定一个num(当num大到无法用int或long long储存时可以直接用lg num储存它),num = 10 ^ n * a. n为num的位数-1 , a为小于10的一个实数.. 比如27 = 10 ^ 1 * 2.7 所原创 2012-09-26 11:20:11 · 924 阅读 · 0 评论 -
ACM入门算法之---递归专场
递归算法就是在函数或子过程的内部,直接或者间接地调用自己的算法,在ACM中它是一个入门级的算法,题目一般非常简单。它一般解决三类问题:(1) 数据的定义是按递归定义的。(Fibonacci函数)(2) 问题解法按递归算法实现。(回溯)(3) 数据的结构形式是按递归定义的。(树的遍历,图的搜索)递归算法解决问题的特点:(1) 递归就是在过程或函数里调用自身。(2) 在使用递归原创 2012-09-26 11:43:07 · 4653 阅读 · 0 评论 -
博弈论入门小结
博弈论:是二人或多人在平等的对局中各自利用对方的策略变换自己的对抗策略,达到取胜目标的理论。博弈论是研究互动决策的理论。博弈可以分析自己与对手的利弊关系,从而确立自己在博弈中的优势,因此有不少博弈理论,可以帮助对弈者分析局势,从而采取相应策略,最终达到取胜的目的。博弈论分类:(摘自百度百科)(一)巴什博奕(Bash Game):只有一堆n个物品,两个人轮流从这堆物品中取物,规定转载 2012-10-06 12:40:35 · 623 阅读 · 0 评论 -
【专题】三分法和牛顿迭代法总结
下面总结两种迭代方法:三分法和牛顿迭代1.三分法二分法作为分治中最常见的方法,适用于单调函数,逼近求解某点的值。但当函数是凸性函数时,二分法就无法适用,这时三分法就可以大显身手。 如下凸函数:类似二分的定义left和rightmid1 = (left + right) / 2mid2 = (mid2 + right) / 2如果mid1靠近极值点, left原创 2012-10-02 16:27:09 · 5229 阅读 · 2 评论 -
【专题】线段树(完整版)
线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点。对于线段树中的每一个非叶子节点[a,b],它的左儿子表示的区间为[a,(a+b)/2],右儿子表示的区间为[(a+b)/2+1,b]。因此线段树是平衡二叉树,最后的子节点数目为N,即整个线段区间的长度。 使用线段树可以快速的查找某一个节点在若干条线段中出现的次数,时间复杂转载 2012-09-28 19:35:07 · 1326 阅读 · 0 评论 -
【专题】树状数组(完整版)
树状数组是对一个数组改变某个元素和求和比较实用的数据结构。两中操作都是O(logn)。 传统数组(共n个元素)的元素修改和连续元素求和的复杂度分别为O(1)和O(n)。树状数组通过将线性结构转换成伪树状结构(线性结构只能逐个扫描元素,而树状结构可以实现跳跃式扫描),使得修改和求和复杂度均为O(lgn),大大提高了整体效率。给定序列(数列)A,我们设一个数组C满足C[i]原创 2012-09-28 19:36:24 · 7699 阅读 · 1 评论 -
转】HDU 动态规划(46道题目)倾情奉献~ 【只提供思路与状态转移方程】
Robberies http://acm.hdu.edu.cn/showproblem.php?pid=2955背包;第一次做的时候把概率当做背包(放大100000倍化为整数):在此范围内最多能抢多少钱 最脑残的是把总的概率以为是抢N家银行的概率之和… 把状态转移方程写成了f[j]=max{f[j],f[j-q[i].v]+q[i].money}(f[j]表示在概率j之下能抢的大洋);转载 2012-09-28 19:34:14 · 906 阅读 · 0 评论 -
hdu(1290)献给杭电五十周年校庆的礼物
这题搞得我有点伤心了,,不懂几何知识,上来就求2^1000.哎,要多学点几何了。。。。。。Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 119 Accepted Submission(s): 83原创 2012-09-27 18:36:21 · 897 阅读 · 0 评论 -
HDU 2050折线分割平面(解析,直线,平行线,折线,三角形)
这篇文章全是转载总结,留给自己看的......(1) n条直线最多分平面问题 题目大致如:n条直线,最多可以把平面分为多少个区域。 析:可能你以前就见过这题目,这充其量是一道初中的思考题。但一个类型的题目还是从简单的入手,才容易发现规律。当有n-1条直线时,平面最多被分成了f(n-1)个区域。则第n条直线要是切成的区域数最多,就必须与每条直线相交且不能有同一交点转载 2012-09-27 19:13:23 · 2064 阅读 · 0 评论 -
hdoj 1237 简单计算器(计算器应用)
转自 Bupt Acmer任意表达式(expression)都是由操作数(operand)操作符(operator)和界限符(delimiter)组成。我们通常习惯使用中缀表达式(infix expression),但中缀表达式离不开括号(bracket)。若使用前缀表达式(prefixexpression)或后缀表达式(postfix expression)则不需要括号。利用栈,可以将中原创 2012-09-26 18:54:50 · 2145 阅读 · 0 评论 -
博弈类题目小结(HDU,POJ,ZOJ)
转载请注明出处,谢谢http://blog.csdn.net/ACM_cxlove?viewmode=contents by---cxlove首先当然要献上一些非常好的学习资料:基础博弈的小结:http://blog.csdn.net/acm_cxlove/article/details/7854530经典翻硬币游戏小结:http://blog.csd转载 2012-11-05 21:35:29 · 733 阅读 · 0 评论