摘要: 题目 链接 题意:给出一个长度为 $n$ 的数列 $A_i$,问是否能将这个数列分解为两个长度为n/2的子序列,满足: 两个子序列不互相重叠(是值不能有共同元素,但位置可以交错)。 两个子序列中的数要完全一样,{1, 2} = {1, 2},{1, 2} ≠ {2, 1}。 分析 用两个队列,正反扫 阅读全文
posted @ 2019-07-15 20:48 Rogn 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 题目 链接 题意:一个n个数字的序列,最多去掉其中k个,使得连续相同数字序列的长度尽量长 分析 如果不考虑去掉元素,就是普通的尺取。考虑到去元素,则只需做一点修改。 先离散化,再把每种元素的位置用vactor存下来。尺取的时间复杂度只有 $O(n)$,但是离散化之前需要排序,就成了 $O(n \lo 阅读全文
posted @ 2019-07-15 19:08 Rogn 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 题目 链接 $Reki$ 在课余会接受一些民间的鹰眼类委托,即远距离的狙击监视防卫.。$Reki$ 一共接收到$m$份委托,这些委托与 $n$ 个直线排布的监视点相关。第 $i$ 份委托的内容为:对于区间 $[r_i, \ j_i]$ 中的监视点,至少要防卫其中的 $k_i$ 个点。$Reki$ 必 阅读全文
posted @ 2019-07-15 17:09 Rogn 阅读(269) 评论(0) 推荐(0) 编辑
摘要: 题目 链接 题意:给定 $n$ 个整数,去掉其中一个数使得剩下数字的gcd最大,求最大的gcd.($3 \leq n \leq 100000$) 分析 枚举每一个位置,显然每次枚举都计算所有数的gcd存在大量的重复计算,所以先计算出gcd前缀和gcd后缀。$pre \_ gcd[i] = gcd(a 阅读全文
posted @ 2019-07-15 15:44 Rogn 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 差分法 我们令 $S_t(n) = \displaystyle \sum_{k=0}^n k^t$,易得 $S_t(n) + (n+1)^t = \displaystyle \sum_{k=0}^n(k+1)^t$ ,可以用二项式定理化简为 $\displaystyle \sum_{k=0}^n \ 阅读全文
posted @ 2019-07-15 15:24 Rogn 阅读(1105) 评论(0) 推荐(0) 编辑
摘要: 求 1..n 之间每个数的逆元,如果都用费马小定理或者扩展欧几里得算,那么复杂度将会达到 $O(n \log p)$ 。利用一些递推式,可以线性地求出1..n中每个数的逆元,从而复杂度可以减少一个log。常用的一个递推公式是 $$i^{-1} = -\left\lfloor \frac{p}{i} 阅读全文
posted @ 2019-07-15 14:58 Rogn 阅读(1540) 评论(0) 推荐(0) 编辑
摘要: 差分算子 首先,有一个关于”算子“的定义:如果一个运算作用在函数上,则我们称这个运算为“算子”。 显然,多项式的卷积、狄利克雷卷积等都是算子。 在迈入高等数学的大门时,我们遇到过一个强劲的算子:微分算子。$\text Df(x) = \displaystyle \lim _{h \to 0}\fra 阅读全文
posted @ 2019-07-15 14:25 Rogn 阅读(1674) 评论(0) 推荐(2) 编辑