"ref" cpp include include using namespace std; typedef long long ll; int n, a[270005], b[270005], c[270005], rev[270005]; const int mod=998244353, gg= ...
分类:
其他好文 时间:
2018-06-07 17:50:26
阅读次数:
134
【题目描述】 现给定1,2,…,n的一个排列,求它的逆序数。 【输入格式】 第一行是一个整数n,表示该排列有n个数(n <= 100000)。第二行是n个不同的正整数,之间以空格隔开,表示该排列。 【输出格式】 输出该排列的逆序数。 【分析】 (1)将区间[1..n]进行二分,先求出区间[1,mid ...
分类:
编程语言 时间:
2018-05-31 00:34:05
阅读次数:
209
Another Version of Inversion 题意:只有2种走路方式,往右或者往下,求先走到一个大的数,在走到小的数的这种方式有多少。也就是说求出关于这个2维矩阵的逆序数。 题解:二维数组+逆序数就完事了。 代码: 1 #include<bits/stdc++.h> 2 using na ...
分类:
编程语言 时间:
2018-05-30 00:19:25
阅读次数:
223
概述 多项式求逆元是一个非常重要的知识点,许多多项式操作都需要用到该算法,包括多项式取模,除法,开跟,求ln,求exp,快速幂。用快速傅里叶变换和倍增法可以在$O(n log n)$的时间复杂度下求出一个$n$次多项式的逆元。 前置技能 快速数论变换(NTT),求一个数$x$在模$p$意义下的乘法逆 ...
分类:
其他好文 时间:
2018-05-27 22:10:43
阅读次数:
439
引入: 对于递推方程: $$F(x) = \sum_{i=1}^k a_iF(x-i)$$ 我们显然会得到一个关于$F$的多项式求逆或者矩阵递推式,大多数情况下我们都是用后者,但是当$k$很大的时候,$k^3log n$的时间复杂度我们是吃不消的,那么自然我们的前人就搞出了一些优化。 特征多项式及C ...
分类:
其他好文 时间:
2018-05-23 22:16:10
阅读次数:
152
本文介绍$O(n)$处理$[1, n]$在模$P$意义下的逆元的方法。 结论 $$inv_i \equiv \lfloor \frac{P}{i} \rfloor inv_{(P \bmod i)} \pmod P$$ 证明 现在要求$i$的逆元: 设$a = \lfloor \frac{P}{i} ...
分类:
编程语言 时间:
2018-05-22 12:43:40
阅读次数:
194
题目分析: 大概是考场上的签到题。首先mod不是质数,所以不能求逆元。注意到有加入操作和删除操作。一个很典型的想法就是线段树分治。建立时间线段树然后只更改有影响的节点,最后把所有标记下传。时间复杂度是O(nlogn)。 代码: ...
分类:
其他好文 时间:
2018-05-19 13:05:30
阅读次数:
145
题目链接 "BZOJ3456" 题解 据说这题是多项式求逆 我太弱不会QAQ,只能$O(nlog^2n)$分治$NTT$ 设$f[i]$表示$i$个节点的简单无向连通图的数量 考虑转移,直接求不好求,我们知道$n$个点无向图的数量是$2^{{n \choose 2}}$的,考虑用总数减去不连通的 既 ...
分类:
其他好文 时间:
2018-05-12 19:26:38
阅读次数:
170
乘法逆元 对于缩系中的元素,每个数a均有唯一的与之对应的乘法逆元x,使得ax≡1(mod n) 一个数有逆元的充分必要条件是gcd(a,n)=1,此时逆元唯一存在 逆元的含义:模n意义下,1个数a如果有逆元x,那么除以a相当于乘以x。 下面给出求逆元的几种方法: 给定模数m,求a的逆相当于求解ax= ...
分类:
其他好文 时间:
2018-05-09 20:53:51
阅读次数:
197