题目传送门 【题目大意】 给定$n$,求$1~n$在膜$p$意义下的乘法逆元。 【思路分析】 好的原本我只会求单个数的逆元,然后被告知了这道题之后发现自己不会做(我果然还是太弱了),于是就学了一下递推求逆元。 设$p=k*i+r$,则可得$k*i+r\equiv0(mod\ p)$,然后乘上$i^{ ...
分类:
其他好文 时间:
2019-09-22 21:14:54
阅读次数:
111
自己整理出来的模板 存在的问题: 1.多项式求逆常数过大(尤其是浮点数FFT) 2.log只支持f[0]=1的情况,exp只支持f[0]=0的情况 有待进一步修改和完善 FFT: 1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef l ...
分类:
其他好文 时间:
2019-09-10 18:00:11
阅读次数:
95
题目数据范围很明显规定了要求一个线性求逆元的算法。 考虑求$i$在模$p$意义下的逆元$\frac{1}{i}$ $code:$ cpp include//P3811 【模板】乘法逆元 using namespace std; define re register define ll long lo ...
分类:
其他好文 时间:
2019-09-08 13:44:27
阅读次数:
74
卡特兰数相关公式 : 1. $H_n = {C_{2n}^n \over n+1)}$ 2. $H_n = {(4n 2)\over n+1}\times H_{n 1}$ 3. $H_n = C_{2n}^n C_{2n}^{n 1}$ 4. $ H_n = \begin{cases} \sum_ ...
分类:
其他好文 时间:
2019-09-05 01:17:35
阅读次数:
128
归并排序(merge sort) 顾名思义,这是一种排序算法,时间复杂度为O(nlogn),时间复杂度上和快排一样 归并排序是分治思想的应用,我们先将n个数不断地二分,最后得到n个长度为1的区间,显然,这n个小区间都是单调的,随后合并相邻的两个区间,得到n/2个单增(减)的区间,随后我们继续合并相邻 ...
分类:
编程语言 时间:
2019-09-02 23:50:01
阅读次数:
110
A 等比数列二分求和 一开始打了个最简单的暴力,打完之后发现可以等比数列公式优化。 因为mod运算的除法不满足分配律,想到求逆元。费马小定理敲完之后惊醒只有70%的数据满足p是质数,zz的欧拉定理求phi(P)算逆元,然后就挂了orzorzorz(就这么点破思路我还搞了1h+) 预期分数80,结果只 ...
分类:
其他好文 时间:
2019-08-31 19:50:31
阅读次数:
86
结果: A 题 等比数列二分求和 我zz 求逆 混了80 费马小定理 要求模数为质数并且互质 但是扩欧只要满足有解就行 B 题 我没打 没看...... C 题 我觉得树剖很好想 就去打树剖 然后打炸了 思路错 只有10 分 .... 我佛了 反思: 下来他们都说 B 题很简单 我。。。 当时没想这 ...
分类:
其他好文 时间:
2019-08-31 19:48:36
阅读次数:
78
题目链接:https://vjudge.net/problem/POJ-2299 题意:给定一个序列,每次只能交换邻近的两个元素,问要交换多少次才能使序列按升序排列。 思路:本质就是求逆序对。我们用归并排序求逆序对,这也是简单的cdq分治。 ...
分类:
编程语言 时间:
2019-08-27 11:06:04
阅读次数:
85
原文引用https://www.dazhuanlan.com/2019/08/26/5d62f77c1b321/ Description题目大意,给你一串每个元素不相同的序列,每次只能相邻的两个元素进行交换,求,最小多少次交换可以使该序列成为上升序列。注意:明白一个规律,一个数x,肯定要和在它左边且... ...
分类:
编程语言 时间:
2019-08-26 10:15:05
阅读次数:
111