随笔分类 - 算法----------
摘要:引言 一个算是冷门的算法(在竞赛上),不过其算法思想值得深究。 前置知识 kmp的算法思想,具体可以参考 → Click here trie树(字典树)。 正文 **问题定义:**给定两个字符串 S 和 T(长度分别为 n 和 m),下标从 0 开始,定义 extend[i] 等于 S[i]...S
阅读全文
摘要:国庆中秋双节,就不写太长的文章了。 补充和复习一下以前没写的素数区间筛法算法吧 部分证明过程来自OI wiki 素数筛法 如果我们想要知道小于等于 \(n\) 有多少个素数呢? 一个自然的想法是我们对于小于等于 \(n\) 的每个数进行一次判定。这种暴力的做法显然不能达到最优复杂度,考虑如何优化。
阅读全文
摘要:min_25 筛介绍 我们考虑这样一个问题。 \[ ans=\sum_{i = 1}^nf(i)\\ \] 其中 $1 \le n \le 10^{10}$ 其中 \(f(i)\) 是一个奇怪的函数、并不像 $μ(i),φ(i),iφ(i)$那样具有那么好的性质。但是满足以下条件: 若 $p$为质数
阅读全文
摘要:「HDU-2196」Computer 树形dp,树的最长路径(最远点对) 题意 给出一棵nn个结点的无根树,求出每个结点所能到达的最远点的距离。 解法 将无根树转成有根树,并进行两次DFS。 第一次DFS求出每个结点在其子树中的正向最大距离和正向次大距离,记为dp[0][x]和dp[1][x],并标
阅读全文
摘要:康托展开可以用来求一个 $1\sim n$ 的任意排列的排名。 什么是排列的排名? 把 $1\sim n$ 的所有排列按字典序排序,这个排列的位次就是它的排名。 时间复杂度? 康托展开可以在 \(O(n^2)\) 的复杂度内求出一个排列的排名,在用到树状数组优化时可以做到 \(O(n\log n)\
阅读全文
摘要:题目: 给你$nm(1<=n,m<=11)$的方格矩阵,要求用12的多米诺骨牌去填充,问有多少种填充方法。 比如下图是对于如下2x6的方格矩阵,可能的填充方案之一。 该如何使用动态规划的方式解决这道题呢?先了解一下状态压缩算法。 状态压缩通常是使用一个整数来表示一个集合,比如整数3,二进制表示为11
阅读全文
摘要:题目链接:POJ 2187 Description Bessie, Farmer John’s prize cow, has just won first place in a bovine beauty contest, earning the title ‘Miss Cow World’. As
阅读全文
摘要:这几天闲来无事去学习了一下计算几何,发现其实不(sang)是(xin)太(bing)难(kuang):stuck_out_tongue: 今天就重点介绍一下简单的叉积及其简单的运用(毕竟作为蒟蒻,难的搞不来啊) 什么是计算几何? “对几何外形信息的计算机表示、分析和综合”——福雷斯特 其实所谓计算几
阅读全文
摘要:引言 首先介绍下什么是凸包?如下图: 在一个二维坐标系中,有若干点杂乱排列着,将最外层的点连接起来构成的凸多边型,它能包含给定的所有的点,这个多边形就是凸包。 实际上可以理解为用一个橡皮筋包含住所有给定点的形态。 凸包用最小的周长围住了给定的所有点。如果一个凹多边形围住了所有的点,它的周长一定不是最
阅读全文
摘要:一、引言 卡特兰数(Catalan numbers, OEIS A000108 (opens new window))是组合数学中一个常出现在各种计数问题中的数列。 数列的前几项为:1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862,... 卡特兰数是一个非常神奇的序列
阅读全文
摘要:什么是向量积? 向量积,也称(向量)叉积,(向量)叉乘,外积,是一种在向量空间中对向量进行的二元运算。常见于物理学力学、电磁学、光学和计算机图形学等理工学科中,是一种很重要的概念。 设向量 \(\overrightarrow{c}\) 由两个向量 \(\overrightarrow{a}\) 和 \
阅读全文
摘要:向量 (为人教版高中数学必修四内容) 平面的向量交错生长/织成/忧伤的网 ——《膜你抄》 简单记录下向量相关知识(来自网络 定义及相关概念 向量 :既有大小又有方向的量称为向量。数学上研究的向量为 自由向量 ,即只要不改变它的大小和方向,起点和终点可以任意平行移动的向量。记作 \(\vec a\)
阅读全文
摘要:引言 在开始论述之前,我想请大家先看下这几个问题: 有 $2n$ 个人排成一行进入剧场。入场费 5 元。其中只有 \(n\) 个人有一张 5 元钞票,另外 \(n\) 人只有 10 元钞票,剧院无其它钞票,问有多少中方法使得只要有 10 元的人买票,售票处就有 5 元的钞票找零? 一位大城市的律师在
阅读全文
摘要:354. 俄罗斯套娃信封问题 很多算法问题都需要排序技巧,其难点不在于排序本身,而是需要巧妙地排序进行预处理,将算法问题进行转换,为之后的操作打下基础。 信封嵌套问题就需要先按特定的规则排序,之后就转换为一个 最长递增子序列问题,可以再使用 二分查找详解 的技巧来解决。 一、题目概述 信封嵌套问题是
阅读全文
摘要:学习之余重新复习了下 位运算的奇技淫巧(二) 又发现了几个有趣的位运算,部分内容来自东哥 本文分两部分,第一部分列举几个有趣的位操作,第二部分讲解算法中常用的 n & (n - 1) 操作,顺便把用到这个技巧的算法题列出来讲解一下。 因为位操作很简单,所以假设读者已经了解与、或、异或这三种基本操作。
阅读全文
摘要:我把双指针技巧再分为两类,一类是「快慢指针」,一类是「左右指针」。前者解决主要解决链表中的问题,比如典型的判定链表中是否包含环;后者主要解决数组(或者字符串)中的问题,比如二分查找。 一、快慢指针的常见算法 快慢指针一般都初始化指向链表的头结点 head,前进时快指针 fast 在前,慢指针 slo
阅读全文

浙公网安备 33010602011771号