FFT
_Ark
这个作者很懒,什么都没留下…
展开
-
[AH2017/HNOI2017]礼物 (FFT)
题面LOJ传送门题解直接把贡献写出来看看。∑i=1n(ai−bi+x)2=∑i=1n(ai2+bi2)+nx2+2x∑i=1n(ai−bi)−2∑i=1naibi\sum_{i=1}^n(a_i-b_i+x)^2=\sum_{i=1}^n(a_i^2+b_i^2)+nx^2+2x\sum_{i=1}^n(a_i-b_i)-2\sum_{i=1}^na_ib_ii=1∑n(ai−bi+...原创 2019-12-24 15:49:02 · 149 阅读 · 0 评论 -
BZOJ 3451Normal (点分治+FFT)
题意BZOJ3451题解Orz yyb题解CODE#pragma GCC optimize ("O2")#include <bits/stdc++.h>using namespace std;const double Pi = acos(-1.0);const int MAXN = 30005;int fir[MAXN], to[MAXN<<1], n...原创 2019-09-14 16:30:32 · 240 阅读 · 0 评论 -
BZOJ 4503: 两个串 FFT
题意在aaa串中找哪些地方出现了bbb。bbb中有通配字符。设第一个串aaa的长度为nnn,第二个串bbb的长度为mmm。下标从000开始。首先我们把bbb串中???的位置的值bib_ibi设为000。然后构造F(i)=∑j=0m−1(a[i+j]−b[j])2∗b[j]F(i)=\sum_{j=0}^{m-1}(a[i+j]-b[j])^2*b[j]F(i)=j=0∑m−1(a[i+...原创 2019-06-01 15:54:35 · 150 阅读 · 0 评论 -
「ZJOI2014」力 FFT
FFTl裸题,小于的部分直接做,大于的部分倒序后再做就行了。#include <bits/stdc++.h>using namespace std;const int MAXN = 1 << 18;const double Pi = acos(-1.0);struct cp { double x, y; cp() { x = y = 0; } ...原创 2019-06-01 15:28:03 · 131 阅读 · 0 评论 -
Codeforces Round #551 (Div. 2) F. Serval and Bonus Problem (DP/FFT)
yyb大佬的博客这线段期望好神啊。。。还有O(nlogn)FFTO(nlogn)FFTO(nlogn)FFT的做法 Freopen大佬的博客本蒟蒻只会O(n2)O(n^2)O(n2)CODE#include <bits/stdc++.h>using namespace std;const int mod = 998244353;typedef long long LL;...原创 2019-04-28 17:47:39 · 154 阅读 · 0 评论 -
[BZOJ 3160] 万径人踪灭 (FFT + Manacher)
AC code#include &amp;lt;cstdio&amp;gt;#include &amp;lt;cmath&amp;gt;#include &amp;lt;algorithm&amp;gt;#include &amp;lt;cstring&amp;gt;using namespace std;const int MAXN = 1e5 + 5;原创 2018-12-24 22:54:33 · 182 阅读 · 0 评论 -
FFT/NTT [51Nod 1028] 大数乘法 V2
题目链接:51Nod 传送门没压位,效率会低一点1.FFT#include &lt;cstdio&gt;#include &lt;cstring&gt;#include &lt;algorithm&gt;#include &lt;cmath&gt;using namespace std;const int MAXN = 1&lt;原创 2018-12-17 21:57:59 · 317 阅读 · 0 评论 -
Partition HDU - 4602 (不知道为什么被放在了FFT的题单里)
题目链接:Vjudge 传送门相当于把nnn个点分隔为若干块,求所有方案中大小为kkk的块数量我们把大小为kkk的块,即使在同一种分隔方案中的块单独考虑,它可能出现的位置是在nnn个点的首、尾、中出现在首尾时,有222种情况,此时剩下的点有(n−k−1)(n-k-1)(n−k−1)个间隔,每个间隔可分可不分,所以方案数为2⋅2(n−k−1)2\cdot 2^{(n-k-1)}2⋅2(n−...原创 2018-12-15 12:32:48 · 205 阅读 · 0 评论 -
FFT版题 [51 Nod 1028] 大数乘法
题目链接:51 Nod 传送门数的长度为10510^5105,乘起来后最大长度为2×1052\times10^52×105由于FFT需要把长度开到222的次幂,所以不能只开到2×1052\times10^52×105,会TLE(卡了好久,还以为是要压位)#include &lt;cstdio&gt;#include &lt;cstring&gt;#include &lt;algorith...原创 2018-12-15 12:03:23 · 219 阅读 · 0 评论 -
[hdu 5307] He is Flying (FFT)
题意给出长度为nnn的数列aaa,记∑i=1nai=s(s&amp;amp;amp;lt;=50000)\sum_{i=1}^na_i=s(s&amp;amp;amp;lt;=50000)∑i=1nai=s(s&amp;amp;lt;=50000)对于任意k∈[0,s]k\in[0,s]k∈[0,s],求出区间和为kkk的区间的长度之和题目分析有了几道fft题的经验,套路就是把可加性的计算化为幂的次数做多项式卷积有Ans(k)=..原创 2018-12-19 17:35:18 · 314 阅读 · 0 评论