摘要:
先瞎扯几句 树上倍增的经典应用是求两个节点的LCA 当然它的作用不仅限于求LCA,还可以维护节点的很多信息 求LCA的方法除了倍增之外,还有树链剖分、离线tarjan ,这两种日后再讲(众人:其实是你不会吧:unamused:。。。) 思想 树上倍增嘛,顾名思义就是倍增 相信倍增大家都不默认,著名的 阅读全文
摘要:
素数的筛法有很多种 在此给出常见的三种方法 以下给出的所有代码均已通过这里的测试 埃拉托斯特尼筛法 名字好长 :joy: 不过代码很短 思路非常简单,对于每一个素数,枚举它的倍数,它的倍数一定不是素数 这样一定可以保证每个素数都会被筛出来 还有,我们第一层循环枚举到$\sqrt(n)$就好,因为如果 阅读全文
摘要:
简介 卡特兰数是组合数学中的一种常见数列 它的前几项为: 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, 35357670,129644790, 477638700, 阅读全文
摘要:
这几天可能会更新的快一点,毕竟快noip了,刷很多题已经没用了,还不如整理整理以前学过的算法 算法 字符串hash入门 震惊!Vector两行代码求逆序对,六行代码过普通平衡树 八数码难题解法大全 离散化模板 带修改莫队算法 Tarjan中栈的分析与SLT栈的实现 数论 逆元的三种解法(附详细证明) 阅读全文
摘要:
简单介绍一下字符串hash 相信大家对于hash都不陌生 翻译过来就是搞砸,乱搞的意思嘛 hash算法广泛应用于计算机的各类领域,像什么md5,文件效验,磁力链接 等等都会用到hash算法 在信息学奥赛中,hash算法主要应用于搜索状态判重,字符串的比较等 hash的主要思想是:对于一个空间、时间需 阅读全文
摘要:
题目描述 如题,给出两个字符串s1和s2,其中s2为s1的子串,求出s2在s1中所有出现的位置。 为了减少骗分的情况,接下来还要输出子串的前缀数组next。 (如果你不知道这是什么意思也不要问,去百度搜[kmp算法]学习一下就知道了。) 输入输出格式 输入格式: 第一行为一个字符串,即为s1(仅包含 阅读全文
该文被密码保护。 阅读全文
摘要:
Network Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1495 Accepted Submission(s): 670 Problem 阅读全文
摘要:
Distance Queries Time Limit: 2000MS Memory Limit: 30000K Total Submissions: 14910 Accepted: 5245 Case Time Limit: 1000MS Description Farmer John's cow 阅读全文
摘要:
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 18652 Accepted Submission(s): 7268 Problem Descri 阅读全文