Description 求一个序列能够成的三角形个数.\(n \leqslant 10^5,a_i \leqslant 10^5\) Sol FFT. 我们可以用FFT求出任意两个形成的组合,不过要减去重复的. 我先算的是排列,最后除6变成组合. 然后考虑将第三条边加入,这时候只需要减去所有小于等于 ...
分类:
其他好文 时间:
2017-01-12 08:37:48
阅读次数:
218
3527: [Zjoi2014]力 Description 给出n个数qi,给出Fj的定义如下: 令Ei=Fi/qi,求Ei. 给出n个数qi,给出Fj的定义如下: 令Ei=Fi/qi,求Ei. Input 第一行一个整数n。 接下来n行每行输入一个数,第i行表示qi。 n≤100000,0<qi< ...
分类:
其他好文 时间:
2017-01-08 18:54:10
阅读次数:
227
2179: FFT快速傅立叶 Description 给出两个n位10进制整数x和y,你需要计算x*y。 Input 第一行一个正整数n。 第二行描述一个位数为n的正整数x。 第三行描述一个位数为n的正整数y。 Output 输出一行,即x*y的结果。 Sample Input 1 3 4 Samp ...
分类:
其他好文 时间:
2017-01-07 11:49:42
阅读次数:
252
无题面神题 原题意: 求所有的Ei=Fi/qi。 题解: qi被除掉了,则原式中的qj可以忽略。 用a[i]表示q[i],用b[j-i]来表示±1/((j-i)^2)(j>i时为正,j<i时为负) 则求E[j]就是多项式乘法了。 因为是FFT,所以b的下标要增加到0及以上。 这题时限有30s,比某题 ...
分类:
其他好文 时间:
2017-01-06 23:56:28
阅读次数:
425
题解: 题意即求不连续但间隔长度对称的回文串个数。 若si=sj,则这对字符可以作为以(i+j)/2为中心的回文串的一部分。 用F[i]来表示可以做为以i/2为中心的回文串的一部分的字符对数,则以i/2为中心的回文串数为2^F[i]。 则这就成了多项式乘法:先做一次a的,把字符为a的位置值赋为1,其 ...
分类:
其他好文 时间:
2017-01-06 23:46:17
阅读次数:
387
Description 问所有三/二/一元组可能形成的组合. Sol FFT. 利用生成函数直接FFT一下,然后就是计算,计算的时候简单的容斥一下. 任意三个-3*两个相同的+2*全部相同的+任意两个-两个相同的+任意一个. Code ...
分类:
其他好文 时间:
2017-01-06 08:02:58
阅读次数:
191
这次打算法马拉松是在星期五的晚上,发挥还算正常(废话,剩下的题都不会= =)。 讲讲比赛经过吧。 8:00准时发题,拿到之后第一时间开始读。 A配对,看上去像是二分图最大权匹配,一看范围吓傻了,先跳过读后面的题。 B完全二叉树的方差,大概看了一遍,好神的样子,跳过。 C多项式?好吧没学过FFT和NT ...
分类:
编程语言 时间:
2017-01-05 21:42:59
阅读次数:
309
引用来自:http://blog.csdn.net/sinwel/article/details/8115673 %仿真参数中的含义 % Ts 表示间隔Ts时间采样,这个越小越接近连续信号,而实际上不可能真正的仿真连续信号。 % df 表示变化后频率分量的最小间隔,即频谱中相邻的点间隔频率是多大,你 ...
分类:
其他好文 时间:
2016-12-31 18:15:31
阅读次数:
189
如果模板有误请杀了我 好了结束了可以关掉了 最大流dinic const int M=100005,N=2*1234; struct edge{ int to,next,cap; }e[M]; int cnt=1,last[N],h[N]; void insert(int a,int b,int c... ...
分类:
编程语言 时间:
2016-12-24 01:27:27
阅读次数:
319
这个东西很神奇,看了半天网上的解释和课件,研究了很长时间,算是大概明白了它的原理。 话不多说先上图。 我们要求的h(x)=f(x)*g(x),f(x)=Σai*x^i,g(x)=Σbi*x^i. 朴素求复杂度是n2的,但一个x次多项式在平面上可以由x+1个点唯一插值表示,所以我们可以先用求出x+1个 ...
分类:
其他好文 时间:
2016-12-23 22:08:26
阅读次数:
181