![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ACM
q1n2hen
这个作者很懒,什么都没留下…
展开
-
最大子段和
对于最大子段和,就是取一个数组中(包括负整数)a1,a2,a3,...,an中和最大的一段。想法很简单,两个变量M,N,每次加一个ai的时候先判断M是否大于0,大于的时候加上ai,否则等于ai,然后每次判断N是否小于M,是的话就保存M。代码实现如下。 int MaxSubSum(int n,int *a) { int b = 0; int sum = 0; for (int i = 0;原创 2017-05-02 23:47:48 · 219 阅读 · 0 评论 -
马拉车算法
做到最大子回文字符串看到的一个算法。所以记一下。 Manacher‘s Algorithm这个算法是用来统计最长线性回文字符串的。他先把字符串中间和两端分别插入了一个#,/*这样处理之后对于字符串无论奇数偶数的处理方法都是一样的了(我的理解)*/。建立一个array,size为处理后的string大小。对应的每个array[i]为以其为中点最大的半径r//若为1则为其自身。 Eg:原创 2017-08-23 15:45:43 · 504 阅读 · 0 评论