经典课堂
雪山飞狐YCH
ACM爱好者
展开
-
AC自动机算法详解
转载自:http://dnizna.javaeye.com/blog/657147 AC自动机算法详解 首先简要介绍一下AC自动机:Aho-Corasick automation,该算法在1975年产生于贝尔实验室,是著名的多模匹配算法之一。一个常见的例子就是给出n个单词,再给出一段包含m个字符的文章,让你找出有多少个单词在文章里出现过。要搞懂AC自动机,先得有模式树(字典树)Trie和K原创 2012-12-05 16:40:10 · 443 阅读 · 0 评论 -
简单多边形的面积求解
转载自:http://www.cnblogs.com/zengqh/archive/2012/08/16/2641699.html 首先说明,这文章讲的多边形是简单多边形,也就是不会出现自交的多边形。其实对于简单多边形的面积计算,如果你略知一点计算几何知识,你就觉得这个会很简单。 如果给你上面的10个点的多边形,你会怎样去求它的面积?显然在初高中的学习中,我们只学习了三角形等形状的面积求法,原创 2012-12-05 16:40:27 · 1016 阅读 · 0 评论 -
最大子矩阵问题
最大和 时间限制:1000 ms | 内存限制:65535 KB 难度:5 描述 给定一个由整数组成二维矩阵(r*c),现在需要找出它的一个子矩阵,使得这个子矩阵内的所有元素之和最大,并把这个子矩阵称为最大子矩阵。 例子:0 -2 -7 0 9 2 -6 2 -4 1 -4 1 -1 8 0 -2 其最大子矩阵为: 9 2 -4 1 -1 8 其元素总和为15。原创 2012-12-05 16:39:05 · 1776 阅读 · 0 评论 -
atan与atan2函数
atan与atan2 转载自:http://www.cnblogs.com/lookhtml/articles/858209.html 我们可以使用正切操作将角度转变为斜率,那么怎样利用斜率来转换为角度呢?可以利用斜率的反正切函数将他转换为相应的角度.as中有两个函数可以计算反正切,我们来看一下.1、as中Math.atan()Math.atan()接受一个参数:用法如下:angel=Ma原创 2012-12-05 16:40:36 · 976 阅读 · 0 评论 -
博弈分析(取石子游戏的数学问题)
博弈问题分析——取石子游戏实例解答参考博客:http://hi.baidu.com/buctears/item/b763f80c8e1c5bf5a1103474小红是个游戏迷,他和小蓝一起玩拿石子游戏。游戏规则为2个人轮流拿石子。一次可以拿1颗或3颗,规定谁取到最后一颗石子谁就胜出。最后决定由小红先取。两人都是游戏高手,该赢的绝不会输(表示不会失误)。问在知道石子总数的情况下,怎样快速预测原创 2012-12-05 16:37:53 · 1859 阅读 · 0 评论 -
树状数组
先废话一下.嗯 嗯 从今天开始 从基础一步一步开始 追逐我的梦想!今天先来讨论一下树状数组.问题提出:已知数组a[],元素个数为n,现在更改a中的元素,要求得新的a数组中i到j区间内的和(1思考:对于这个问题,我们可以暴力地来解决,从a[i]一直累加到a[j],最坏的情况下复杂度为O(n),对于m次change&querry,合起来的复杂度为O(m*n),在n或m很大的情况下,这原创 2012-12-05 16:38:42 · 345 阅读 · 0 评论 -
strcpy和memcpy的区别
strcpy和memcpy都是标准C库函数,它们有下面的特点。strcpy提供了字符串的复制。即strcpy只用于字符串复制,并且它不仅复制字符串内容之外,还会复制字符串的结束符。 已知strcpy函数的原型是:char* strcpy(char* dest, const char* src);memcpy提供了一般内存的复制。即memcpy对于需要复制的内容没有限制,因此用途更广。void *原创 2012-12-05 16:38:48 · 359 阅读 · 0 评论