自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

天空之心

风起长亭,星垂九天

  • 博客(112)
  • 收藏
  • 关注

原创 快速傅里叶变换 FFT 学习笔记

文章目录FFT 学习笔记多项式:系数表示法:点值表示法:复数:前置芝士:向量:弧度制:定义:运算法则:FFT 学习笔记本文有错误之处请诸位大佬多多指正!FFTFFTFFT :快速傅里叶变换的英文缩写,快速傅里叶变换是对离散傅里叶变换 DFTDFTDFT 的优化,用来解决多项式上的操作如 卷积 等问题。多项式:系数表示法:一般在 初中 数学上,表示一个多项式我们用的是系数表示法设 A(x)A(x)A(x) 表示一个关于xxx 的 nnn 次的多项式,那么:A(x)=∑i=0nai∗xiA(x)

2021-09-10 19:43:40 354

原创 尚未完成的

2021-08-17 07:55:53 79

原创 2021 东莞中考录取分数线

致纪中在集训的同学们东莞录取分数线:

2021-07-13 18:31:00 186 4

原创 CSP -J/S & NOIP 2020 游记

CSP−J/S  +  NOIP    2020CSP- J/S~~+~~ NOIP~~~~2020 CSP−J/S  +  NOIP    2020游记游记 游记2020.10.102020.10.102020.10.10 Day0Day_0Day0​人生总是那么奇妙,在CSP−J/S  CSP-J/S~~CSP−J/

2021-01-22 10:17:38 202

原创 2022 退役记

退役记

2022-11-27 21:29:59 323 2

原创 未完成代码

暂存#include<iostream>#include<cstdio>#include<algorithm>#include<queue>#include<cstring>#include<vector>#include<cmath>#include<ctime>#define r register#define rep(i,x,y) for(r ll i=x;i<=y;++i)#d

2022-05-07 18:11:14 289

原创 牛客挑战赛57 B 异或矩阵 【数学】【打表】【找规律】

牛客挑战赛57 B 异或矩阵题目描述思路这里先抛出一个我无法证明的结论:最大答案一定是 2k−12^k-12k−1,满足2(k−1)−1<n∗m<=2k−12^{(k-1)}-1<n*m<=2^k-12(k−1)−1<n∗m<=2k−1将其记作答案 ansansans然后我们打表找规律,暴力使用8重循环。我们发现,对于任意一个矩阵,总会找到一个答案矩阵,矩阵中的元素个数为2,(如果 n∗m=2k−1n*m=2^k-1n∗m=2k−1,那么答案就是这个数,

2022-02-19 11:46:45 583

原创 牛客挑战赛57 A 构造题【最大公约数】【玄学?】

牛客挑战赛57 A 构造题题目描述思路因为数据比较水,这题有太多玄学做法了(同机房有人第二个样例没过直接AC的)首先找到数组中的最小值amina_{min}amin​,答案一定小于等于amin+1a_{min}+1amin​+1然后用 nownownow 表示当前的最大答案,向后循环时now=max(gcd(now,a[i]),gcd(now,a[i]+1))now=max(gcd(now,a[i]),gcd(now,a[i]+1))now=max(gcd(now,a[i]),gcd(now,

2022-02-19 11:24:23 500 2

原创 【ybtoj高效进阶6-2-5】余数之和/【luogu】P2261 [CQOI2007] 余数求和【 数论】【整除分块】

【ybtoj高效进阶6-2-5】余数之和 /【luogu P2261】 [CQOI2007] 余数求和题目大意:给定 nnn , kkk,求∑i=1nk mod i\sum\limits_{i=1}^{n}k \bmod ii=1∑n​kmodi思路:先来分析一下整除分块这种东西根据取模运算的性质,x mod y=x−y∗⌊xy⌋x\bmod y=x-y*\left \lfloor \frac{x}{y} \right \rfloorxmody=x−y∗⌊yx​⌋则原式=∑i=1nk−i∗⌊ik

2021-12-04 15:13:45 343

原创 2021-10-06 洛谷提高B组模拟赛 B 看错题的产物改编而来的产物【结论】【最大公约数】

2021-10-06 洛谷提高B组模拟赛 B 看错题的产物改编而来的产物题面思路输出最大值就是答案证明:证明:证明:因为是子序列,所以排序并不会影响答案,所以我们从小到大排序我们考虑从这个有序的序列中取出 jjj个数 a1,a2,⋅⋅⋅,an;   ai<ai+1a_1,a_2,···,a_n;~~~a_i<a_{i+1}a1​,a2​,⋅⋅⋅,an​;   ai​<ai+1​设 gcd⁡(a1,a2,⋅⋅⋅an)

2021-10-07 16:05:47 82

原创 2021-10-06 洛谷提高B组模拟赛 A 日常【模拟】

2021-10-06 洛谷提高B组模拟赛 A 日常 思路:因为最后一个 subtasksubtasksubtask 不算分,所以就有了一个 O(26∗n)O(26*n)O(26∗n) 的做法因为最后的答案一定小于等于 262626,那么每循环到一个位置,往后枚举,最多枚举 262626 位,统计最后的长度。至于正解的 O(n)O(n)O(n),就用两个双指针维护合法序列的开头和结尾,模拟跳动就好了我写的是正解代码:#include<iostream>#include<c

2021-10-06 16:56:15 165

原创 2021-09-29 洛谷模拟赛 T2 数字【搜索】

2021-09-29 洛谷模拟赛 T2 数字思路:因为要保证 444 的个数要和 777 的个数一样,所以输出串的长度一定是偶数我们发现,对于任意一个输入长度 lenlenlen 为奇数的字符串,答案一定是 4444⋅⋅⋅4477⋅⋅⋅77774444···4477···77774444⋅⋅⋅4477⋅⋅⋅7777(前半部分是 444, 后半部分是 777 注意 lenlenlen 要 +1+1+1)那么偶数呢?对于长度为偶数的字符串,我们使用深搜解决,每次判断当前位置填 4 还是填 7,如果

2021-09-29 19:30:28 80

原创 2021-09-28 洛谷模拟赛 T3 友谊序列 【结论】【位运算】

2021-09-28 洛谷模拟赛 T3 友谊序列题面思路:输出样例即可获得满分!!!人生第一次遇到如此哲学的题我们假设 ai xor bj=ak(bk)a_i~xor~b_j=a_k(b_k)ai​ xor bj​=ak​(bk​)根据异或运算的规律,我们可以得到 ak(bk) xor bj(ai)=ai(bj)a_k(b_k)~xor~b_j(a_i)=a_i(b_j)ak​(bk​) xor bj​(ai​)=

2021-09-28 16:59:15 101

原创 2021-09-28 洛谷模拟赛 T1 破碎的饼干 【模拟】

2021-09-28 洛谷模拟赛 T1 破碎的饼干题目大意:给你 4 个 n∗nn*nn∗n 由黑白组成的网格,你要通过通过平移把它们拼成 2n∗2n2n*2n2n∗2n 的网格。你可以花费 1 个代价来修改某个格子的颜色,使得最后相邻两个格子的颜色都不相同问最小代价。思路:不难发现最后的矩阵一定是这两种情况(假设 n=3n=3n=3)[010101010]\begin{bmatrix}0 &1 &0 \\ 1 & 0& 1\\ 0& 1

2021-09-28 16:48:50 130

原创 2021-09-27 洛谷模拟赛 T1 年会小游戏【质数】【搜索】【数论】

2021-09-27 洛谷模拟赛 T1 年会小游戏原题 :反素数数据范围有变,处理一下 101810^{18}1018 时会爆 long  longlong~~longlong  long 的问题就好了或者使用 long  doublelong~~doublelong  double ?原来的题解代码:#include<iostream>#include<cstdio>#include&

2021-09-28 11:24:42 338

原创 2021-09-27 洛谷模拟赛 T3 走亲戚 【二分】【模拟】

2021-09-27 洛谷模拟赛 T3 走亲戚题目描述小X家大年初三要去拜访同村的所有亲戚,恰好他家的所有亲戚都住在一条东西走向的公路边,而车的油量有限,车子油量能行驶的距离为LLL,他对nnn个亲戚随机进行编号(1,2...n)(1,2...n)(1,2...n),假设马路的中点为000,某个亲戚的坐标 xix_ixi​ 就为该亲 戚到马路中点的距离(设中点以东的坐标为正数),而小X决定按照一个规则去拜访亲戚们:(1)先向东走,去东边能抵达的最远亲戚家。(2)如果油量足够,再向西走,去西边能抵达的

2021-09-27 17:08:39 245 2

原创 2021-9-26 洛谷模拟赛 T3 大鱼吃小鱼 【贪心】

2021-9-26 洛谷模拟赛 T3 大鱼吃小鱼题目大意给你 n 个数,选一些数两两匹配,但条件是大的数至少是小的数的两倍。然后如果有数没有匹配,则自己视为一对,否则一对匹配算一对。然后要你最小化对数__ By TJH思路:显然贪心首先从小到大排序,将区间划分为[1,n2][1,\frac{n}{2}][1,2n​] 和 [n2+1,n][\frac{n}{2}+1,n][2n​+1,n],两段。从左往右贪心选数匹配代码#include<iostream>#include

2021-09-27 07:53:37 102

原创 2021-9-26 洛谷模拟赛 T2 超级蚯蚓 【数学】

2021-9-26 洛谷模拟赛 T2 超级蚯蚓 【数学】题目大意给你 n 条线段,你每次会随机选两个线段头合起来,问你和 n 次之后恰好变成一个大环的概率。思路:代码:#include<iostream>#include<cstdio>#include<algorithm>#include<queue>#include<cstring>#include<vector>#include<cmath>#

2021-09-27 07:44:22 101

原创 2021-9-26 洛谷模拟赛 T1 小鱼吃大鱼【结论?】【数学】【模拟?】

2021-9-27 洛谷模拟赛 T1 大鱼吃小鱼题目大意给你一个堆数 a1,a2,a3 ⋅⋅⋅ an−1,ana_1,a_2,a_3~···~a_{n-1},a_na1​,a2​,a3​ ⋅⋅⋅ an−1​,an​,让你从中选取两个数 ai,aj (ai>aj)a_i,a_j~(a_i>a_j)ai​,aj​ (ai​>aj​),使得 ai mod aja_i\bmod a_jai​modaj​ 的值最大,1≤n≤2∗106

2021-09-27 07:25:47 82

原创 【ybtoj】 冲刺 NOIP2021 模拟赛 B 组 Day4 A 统计集合 【结论】【推式子】

【ybtoj】 冲刺 NOIP2021 模拟赛 B 组 Day4 A 统计集合题目大意:定义一个集合 SSS 的函数 f(S)=max(Si)−min(Si)f(S)=max(S_i)-min(S_i)f(S)=max(Si​)−min(Si​)问 SSS 的所子集的 fff 函数值的和是多少思路:首先,排序是必不可少的我们考虑每一个数对最小值的贡献,用它后面的数减去它再乘上两个数之间构成的区间个数得到一个式子:∑i=1n∑j=1i(a[i]−a[j])∗2i−j−1=∑i=1n∑j=in(a

2021-09-25 21:07:49 85

原创 【CSP-J2019】纪念品【动态规划 DP】【背包】

[CSP-J2019] 纪念品题目链接 :luogu P5662两年前的比赛题,现在才来补这个锅,我真的太菜了······题目描述小伟突然获得一种超能力,他知道未来 TTT 天 NNN 种纪念品每天的价格。某个纪念品的价格是指购买一个该纪念品所需的金币数量,以及卖出一个该纪念品换回的金币数量。每天,小伟可以进行以下两种交易无限次:任选一个纪念品,若手上有足够金币,以当日价格购买该纪念品;卖出持有的任意一个纪念品,以当日价格换回金币。每天卖出纪念品换回的金币可以立即用于购买纪念品,当日购买的纪

2021-09-13 21:38:57 287

原创 洛谷 P1919 【模板】A*B Problem升级版 【快速傅里叶变换 FFT】

【洛谷 P1919】 【模板】A*B Problem升级版题目大意给你两个超大整数 a,ba,ba,b,问 a∗ba*ba∗b其中 a,b≤101000000a,b\leq10^{1000000}a,b≤101000000思路高精度都是狗很明显,我们普通的高精度乘法不知道炸到哪里去了。我们发现对于一个 nnn 位的十进制数 KKK,我们可以看做一个 n−1n-1n−1 次的多项式,表示成A(x)=a0+a1∗10+a2∗102+⋅⋅⋅+an−1∗10n−1A(x)=a_0+a_1*10+a_2

2021-09-11 09:19:23 233

原创 【洛谷 P5367】 【模板】康托展开【数论】【树状数组】

【洛谷 P5367】【模板】康托展开题目大意:给你一个排列,问你按照字典序它是第几个排列?思路:首先,最简单的暴力做法就是用深搜从头开始将所有排列按照字典序生成,看看这个排列在第几个位置。时间复杂度 O(n!)O(n!)O(n!),然后 n≤106n\leq 10^6n≤106,你算到宇宙灭亡估计都算不出来。所以这里我们引入康托展开,对于每一个排列 a[ ]a [~]a[ ],我们有:f[i]=∑j=i+1n(a[i]<a[j])f[i]=\sum_{j=i+1}^{

2021-08-30 09:58:47 168

原创 【洛谷 P5520】[yLOI2019] 青原樱 【组合数学】

[yLOI2019] 青原樱 【洛谷 P5520】好喜欢 《青原樱》这首歌, 带我入坑银临古风的 题歌。%%% 一扶苏一 dalao星川之下皆萤火尘埃,我独行在人潮你天真而待。相遇若是借丹青着色,青原上绯樱如海。晴昼秋岚皆入我襟怀,只岁暮天寒独对江心月白。谢此际春风带我慷慨,回眸处一川青黛。——《青原樱》题目大意:你有 mmm 朵花,有 nnn 个花盆,每朵花...

2021-08-27 12:10:38 187

原创 洛谷 P3810 【模板】三维偏序(陌上花开)【cdq 分治】【树状数组】

【洛谷 P3810】 【模板】三维偏序(陌上花开)题目大意:给你一堆数,每个数有三个权值a[i],b[i],c[i]a[i],b[i],c[i]a[i],b[i],c[i]设 f[i]f[i]f[i] 表示 ∑(a[j]≤a[i]) && (b[j]≤b[i]) && (c[j]≤c[i])     i !=j\sum(a[j]\leq a[i])~\&\&amp

2021-08-25 11:49:51 169 2

原创 2021-08-24 SSL 模拟赛 T3【递推】【矩阵乘法】

2021-08-24 SSL 模拟赛 T3题目大意:题目描述已经不能再简单了······思路:比赛时唯一 AC 的题目。经过考场上的一番玄学乱推+对着样例模拟了一番,得到了一个递推式:f[i]=f[i−1]+f[i−2]+f[i−3]       (f[1]=2,f[2]=4,f[3]=7)f[i]=f[i-1]+f[i-2]+f[i-3]~~~~~~~(f[1]=2,f[2]=4,f[3]=7)f[i]=f[i−1]+f

2021-08-25 08:18:48 69

原创 2021-08-24 SSL 模拟赛 T2 【莫队】【树状数组】

21-08-24 SSL 模拟赛 T2依旧没有标题。题目大意:题目的描述已经够简略了······思路:70%:因为数据太水,直接暴力O(n∗m)O(n*m)O(n∗m) 可以拿70分,但是根据大佬的说法,这 70% 是给主席树的(注意题目中的 l=1l=1l=1)赛时我当然是打了暴力啦。100%:如果没有数据所处的范围[a,b][a,b][a,b],那么这一道题就是一个莫队的模板题 (比模板还模板)对于要答案在区间[a,b][a,b][a,b]的范围内,我们可以使用一个树状数组在值域上维

2021-08-25 07:53:31 83

原创 2021-08-24 SSL 模拟赛 T1 【结论】【位运算】

2021-08-24 SSL 模拟赛 T1怎么又开始没有标题了?这是一道散兵题,我也是散兵。题目大意:给你一个序列,问你怎么划分才能使得数列中每一段的异或之和最大。思路:众所周知,对与每一个二进制数,二进制的每一位上做异或运算,有:0 xor 1=1,0 xor 0=0,1 xor 1=00~xor~1=1,0~xor~0=0,1~xor~1=00 xor 1=1,0 xor 0=0,1&nbs

2021-08-25 07:33:04 65

原创 【洛谷 P3224】 [HNOI2012] 永无乡【平衡树】【并查集】【启发式合并】

【洛谷 P3224】 [HNOI2012] 永无乡题目大意:给你一张图,告诉你点,边的关系,每个点有一个重要度排名,现在有两个操作:1:在两个点之间连一条边2:询问某个点所在的连通块中重要度排名第 k 的点的编号思路:看到这种需要动态插入某些东西,又要维护某一个范围内的第 k 小值,第一时间想到平衡树,然后维护连通块肯定就是并查集了。我们把每个连通块用一棵平衡树来维护,每次并查集的时候暴力将两棵平衡树合并。注意要将小的平衡树合并到大的里面,这样复杂度就是小的平衡树的大小,其实就是启发式合并,

2021-08-22 19:35:45 74

原创 【洛谷 P3391】 文艺平衡树 【平衡树】

【洛谷 P3391】 文艺平衡树题目大意:写一种数据结构支持静态区间的翻转操作。思路:考虑使用线段树中的懒标记,每次区间发生变化时遇到懒标记就下传。每次下传时懒标记 xor 1xor ~1xor 1,就是如果没有懒标记那么就打上,如果以前有的话那么说明这个区间翻转了两次,和没翻转一样。使用平衡树 fhq Treap 解决。注意分裂的时候不是按照权值分裂了,而是前 k 个。所谓的模板题代码:#include<iostream>#include<cst

2021-08-21 15:34:26 160

原创 平衡树学习笔记之 fhq Treap

平衡树学习笔记 1:fhq Treap(非旋 Treap)正文开始前首先 %%% fhq 大佬。众所周知,平衡树是一种 非常猥琐 码量堪忧的数据结构。他的祖先是一种叫做二叉搜索树 ( BSTBSTBST ) 的东东。话说二叉搜索树是个什么玩意呢?二叉搜索树:显而易见,这是一棵二叉树 (逃),它的每个节点上有一个需要我们维护的值,我们称为“关键码”然后这棵树的中序遍历是一个关于关键码的一个严格单调递增序列 (假设没有重复的元素) 是有序的。然后就没了。当然我们可以用这玩意来搞很多非常 恶心

2021-08-21 15:04:46 225

原创 2021-08-19 SSL 模拟赛 T2 荒地群猎【数学】【前缀和】【思维题】【二分查找】

2021-08-19 SSL 模拟赛 T1 洛谷月赛终于又有题目了!!!题目大意:给出进制 p 以及 1~p-1 每个数的个数,设这些数组成的 p 进制数为 K问最大的 K 使得 K≡0(modp−1)K\equiv 0\pmod {p-1}K≡0(modp−1) 的 K 的从小到大的第 x 位是多少?思路:我就只推一波式子。对于一个 p 进制数 KKK,有:K=c0∗p0+c1∗p1+⋅⋅⋅⋅⋅⋅+ci∗piK=c_0*p^0+c_1*p^1+······+c_i*p^iK=c0​∗p0

2021-08-19 21:55:26 60

原创 2021-08-19 SSL 模拟赛 T1 洛谷月赛【深度优先搜索 DFS】【约数】【RMQ】

2021-08-19 SSL 模拟赛 T1 洛谷月赛啊啊啊终于有题目了!!!题目大意:将某个序列划分为 k 段,问怎么划分才能使所有段中的最大值的 gcdgcdgcd 最大。思路:首先我们发现最后的答案一定是区间中最大数的约数,也就是 ans∣max(a[i])ans|max(a[i])ans∣max(a[i])。那么我们预处理出最大数的所有约数,然后从大到小枚举,判断该数能否成为答案。不过我们怎么判断呢?首先我们找到最大数的位置,按照这个位置将序列分成两半,在左,右半边查找最大数,如果

2021-08-19 21:08:56 73

原创 平衡树板子1:【fhq Treap】

平衡树板子1:fhq Treap太菜了只能把标抠从大佬手中抠下来#include<iostream>#include<cstdio>#include<algorithm>#include<ctime>#include<cstring>#define r register#define rep(i,x,y) for(r ll i=x;i<=y;++i)#define per(i,x,y) for(r ll i=x;i>=

2021-08-18 07:47:58 84

原创 2021-08-17 SSL 模拟赛 T1【字符串】【子序列自动机】

2021-08-17 SSL 模拟赛 T1题目大意:给定一个模式串和一大堆匹配串,问你每个匹配串是否是模式串的子序列。思路:子序列自动机的弱化版。听说可以用二分和 vectorvectorvector 过掉。但是我还是打了一个极度暴力的盗版子序列自动机。我们设 nxt[i][j]nxt[i][j]nxt[i][j] 表示第 i 位后第一个 j 的出现位置。预处理 nxtnxtnxt 数组: rep(i,1,27) nxt[n+1][i]=n+1; per(i,n,0) { r

2021-08-17 20:51:49 73

原创 FFT板子

FFT 板子这里先放代码,等到彻底消化后再补博客理解证明。#include<iostream>#include<cstdio>#include<algorithm>#include<queue>#include<cstring>#include<cmath>#define r register#define rep(i,x,y) for(r ll i=x;i<=y;++i)#define per(i,x,y)

2021-08-16 21:43:40 80

原创 2021-08-16 SSL 模拟赛 T4 【斐波那契数列】【数学】【链表或并查集】

2021-08-16 SSL 模拟赛 T4Quantask 大爷,stoorz 大爷,my_dog 大爷 yyds!!!!!题目大意:给你一堆集合,每次操作可以往 [l,r][l,r][l,r] 内的集合加入一个数,或者询问从[l,r][l,r][l,r]的所有集合中是否存在三个数可以作为一个三角形的边长。思路:我们考虑一个集合内的数怎么样才能无法构成一个三角形。假设 a[1]=1,a[2]=2a[1]=1,a[2]=2a[1]=1,a[2]=2 那么min(a[3])=2min(a[3])

2021-08-16 19:05:31 134

原创 2021-08-16 SSL 模拟赛 T3 【约数】【思维】【数学】

2021-08-16 SSL 模拟赛 T3题目大意:求出1−n−11-n-11−n−1 中所有满足n−0.5xn−x=k,  k∈N∗\frac{n-0.5x}{n-x}=k,~~k\in N*n−xn−0.5x​=k,  k∈N∗ 的 xxx。思路:我们来转化一下这个公式,让它变得好看一点:n−0.5xn−x=2n−x2n−2x=k\frac{n-0.5x}{n-x}=\frac{2n-x}{2n-2x}=kn−xn−0.5x​=2n−2x2n−x​=k

2021-08-16 16:40:51 62

原创 2021-08-16 SSL 模拟赛 T2【前缀和思想】【模拟】

2021-08-16 SSL 模拟赛 T2题目大意:给你一个初始序列,很多组操作,每次操作可以交换序列中两个位置的数值,每次问你初始序列在经过操作l−rl-rl−r后的目标序列。思路:首先我们按照给出的操作顺序将序列操作一遍,记录每次操作后的状态。然后对于每一个询问[l,r][l,r][l,r] 我们调出第 l−1l-1l−1次状态和第 rrr 次状态,分析每个位置的数在操作后的末位置,然后把位置变化规律代入到初始序列中,就可以得到答案。听说还可以用倍增做,但是我不会·····代码:#i

2021-08-16 16:14:32 57

原创 2021-08-16 SSL 模拟赛 T1【组合数学】【卢卡斯定理】

2021-08-16 SSL 模拟赛 T4【组合数学】【卢卡斯定理】题目大意给定多组数据 m,nm,nm,n 输出Cmn mod 2C_m^n\bmod 2Cmn​mod2 的值思路:卢卡斯定理模板的弱化版 (逃)因为模数 p=2p=2p=2,所以逆元和阶乘的预处理达到了O(1)O(1)O(1)总的时间复杂度大概是O(T log n),需要使用快读快输O(T~log~n),需要使用快读快输O(T log n),需要使用快读快输听说还有推结论的O(T)O(

2021-08-16 12:00:37 76

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除