随笔分类 -  数学相关

摘要:[POJ 2821]TN's Kindom III(任意长度循环卷积的Bluestein算法) 题面 给出两个长度为$n$的序列$B,C$,已知$A$和$B$的循环卷积为$C$,求$A$. $n include include include define maxn (1real=x.real; t 阅读全文
posted @ 2020-02-10 21:40 birchtree 阅读(819) 评论(0) 推荐(0)
摘要:再探快速傅里叶变换(FFT)学习笔记(其二)(NTT) 写在前面 为了不使篇幅过长,预计将把学习笔记分为四部分: DFT,IDFT,FFT的定义,实现与证明:快速傅里叶变换(FFT)学习笔记(其一) NTT的实现与证明:快速傅里叶变换(FFT)学习笔记(其二) 任意模数NTT与FFT的优化技巧 多项 阅读全文
posted @ 2020-02-07 16:09 birchtree 阅读(1159) 评论(1) 推荐(2)
摘要:[Codeforces 580D]Fizzy Search(FFT) 题面 给定母串和模式串,字符集大小为4,给定k,模式串在某个位置匹配当且仅当任意位置模式串的这个字符所对应的母串的位置的左右k个字符之内有一个与它相同的,求模式串能全部匹配的次数。 分析 我们先考虑$k=0$的情况,即一般的字符串 阅读全文
posted @ 2020-02-07 10:43 birchtree 阅读(346) 评论(0) 推荐(0)
摘要:再探快速傅里叶变换(FFT)学习笔记(其一) 写在前面 为什么写这篇博客 笔者去年暑假刚刚学习过FFT,NTT的一些基础应用。但当时对FFT和NTT的理解还不够深入。本博客参考2016年国家集训队论文中雅礼中学毛啸的《再探快速傅立叶变换》,对之前学习时的不足之处做了补充。 为了不使篇幅过长,预计将把 阅读全文
posted @ 2020-02-06 15:22 birchtree 阅读(2757) 评论(1) 推荐(1)
摘要:[Codeforces 464D]World of Darkraft(期望DP) 题面 游戏中有k种装备,每种装备初始时都是等级1。zyd每打一只怪,就会随机爆出一件装备。掉落和更新装备方式如下: 假设这种装备当前等级为t,那么系统会在[1,t+1]中等概率随机出该装备的等级。爆出装备后,会装备上身 阅读全文
posted @ 2020-02-05 19:48 birchtree 阅读(249) 评论(0) 推荐(0)
摘要:[Codeforces 1295F]Good Contest(DP+组合数学) 题面 有一个长度为$n$的整数序列,第$i$个数的值在$[l_i,r_i]$中随机产生。问这个序列是一个不上升序列的概率(模$998244353$意义下)。 $n \leq 50,l_i,r_i \leq 9982443 阅读全文
posted @ 2020-01-31 19:10 birchtree 阅读(464) 评论(0) 推荐(0)
摘要:[LuoguP3502] [BZOJ 2085] [POJ2010]CHO Hamsters(KMP+最短路+矩阵快速幂) 题面 Tz养了$n$只仓鼠,他们都有英文小写的名字,现在Tz想用一个字母序列来表示他们的名字,只要他们的名字是字母序列中的一个子串就算,出现多次可以重复计算。现在Tz想好了要出 阅读全文
posted @ 2020-01-09 17:03 birchtree 阅读(172) 评论(0) 推荐(0)
摘要:[Codeforces 266E]More Queries to Array...(线段树+二项式定理) 题面 维护一个长度为$n$的序列$a$,$m$个操作 1. 区间赋值为$x$ 2. 查询$\sum_{i=l}^r a_i(i l+1)^k \mod 10^9+7$ $n,m \leq 10^ 阅读全文
posted @ 2019-12-11 13:20 birchtree 阅读(237) 评论(0) 推荐(0)
摘要:[luogu 3175] [HAOI2015]按位或 题面 刚开始你有一个数字0,每一秒钟你会随机选择一个[0,2^n 1]的数字,与你手上的数字进行按位或运算。问期望多少秒后,你手上的数字变成2^n 1。 分析 前置知识:min max容斥 记$\max(S)$为集合$S$中的最大值,$\min( 阅读全文
posted @ 2019-11-12 17:07 birchtree 阅读(251) 评论(0) 推荐(0)
摘要:[BZOJ 1013] [JSOI2008]球形空间产生器 题面 给出一个n维球体上的n+1个点,求球心坐标 分析 设球心坐标为$(x_1,x_2,\dots x_n)$,由于一个球体上的所有点到球心距离相等。那么 第$i$个方程为$$ \begin{equation} \sum_{j=0}^n ( 阅读全文
posted @ 2019-11-03 16:59 birchtree 阅读(85) 评论(0) 推荐(0)
摘要:[BZOJ 4820] [SDOI2017] 硬币游戏(高斯消元+概率论+字符串hash) 题面 扔很多次硬币后,用H表示正面朝上,用T表示反面朝上,会得到一个硬币序列。比如HTT表示第一次正面朝上,后两次反面朝上。 选出n个同学,每个同学猜一个长度为m的序列,当某一个同学猜的序列在硬币序列中出现时 阅读全文
posted @ 2019-11-03 16:43 birchtree 阅读(218) 评论(0) 推荐(0)
摘要:[Codeforces 1246B] Power Products (STL+分解质因数) 题面 给出一个长度为$n$的序列$a_i$和常数k,求有多少个数对$(i,j)$满足$a_i \times a_j = x^k (x \in \mathbb{N}^+)$。即这两个数乘起来恰好为一个正整数的$ 阅读全文
posted @ 2019-10-26 22:55 birchtree 阅读(336) 评论(0) 推荐(0)
摘要:[BZOJ 3992] [SDOI 2015] 序列统计(DP+原根+NTT) 题面 小C有一个集合S,里面的元素都是小于 质数 M的非负整数。他用程序编写了一个数列生成器,可以生成一个长度为N的数列,数列中的每个数都属于集合S。小C用这个生成器生成了许多这样的数列。但是小C有一个问题需要你的帮助: 阅读全文
posted @ 2019-10-23 20:34 birchtree 阅读(191) 评论(0) 推荐(0)
摘要:[BZOJ5306] [HAOI2018]染色(容斥原理+NTT) 题面 一个长度为 n的序列, 每个位置都可以被染成 m种颜色中的某一种. 如果n个位置中恰好出现了 S次的颜色有 K种, 则小 C 会产生 $W_k$的愉悦度. 求对于所有可能的染色方案, 他能获得的愉悦度的和。答案对 100453 阅读全文
posted @ 2019-10-23 20:06 birchtree 阅读(187) 评论(0) 推荐(0)
摘要:[BZOJ 3527] [ZJOI2014]力(FFT) 题面 求$ F_j=\sum_{ij} \frac{q_i q_j}{(i j)^2} $ 题外话:这题叫”力“,大概是因为这个式子长得很像电荷间作用力的公式$F=\frac{kq_1q_2}{r^2}$。 分析 设$E_i=\frac{F_ 阅读全文
posted @ 2019-10-21 21:16 birchtree 阅读(286) 评论(0) 推荐(0)
摘要:[BZOJ 3456]城市规划(cdq分治+FFT) 题面 求有标号n个点无向连通图数目. 分析 设$f(i)$表示$i$个点组成的无向连通图数量,$g(i)$表示$i$个点的图的数量。 显然$g(i)=2^{C_i^2}$种,但是我们要把不联通的去掉。 枚举1号点所在联通块大小$j$.从剩下$i 阅读全文
posted @ 2019-10-21 21:01 birchtree 阅读(261) 评论(0) 推荐(0)
摘要:[BZOJ 3625] [Codeforces 438E] 小朋友的二叉树 (DP+生成函数+多项式开根+多项式求逆) 题面 一棵二叉树的所有点的点权都是给定的集合中的一个数。 让你求出1到m中所有权值为i的二叉树的个数。 两棵树不同当且仅当树的形态不一样或者是树的某个点的点权不一样 分析 设$c( 阅读全文
posted @ 2019-10-21 20:24 birchtree 阅读(198) 评论(0) 推荐(0)
摘要:[BZOJ 3509] [CodeChef] COUNTARI (FFT+分块) 题面 给出一个长度为n的数组,问有多少三元组$(i,j,k)$满足$i include include include define maxn 200000 using namespace std; typedef l 阅读全文
posted @ 2019-10-21 20:07 birchtree 阅读(349) 评论(0) 推荐(0)
摘要:[BZOJ 3771] Triple(FFT+生成函数) 题面 给出 n个物品,价值为别为$w_i$且各不相同,现在可以取1个、2个或3个,问每种价值和有几种情况? 分析 这种计数问题容易想到生成函数。 设生成函数$A(x)=\sum_{i=1}^{n} x^{w_i}$,指数为价值,系数为选的方案 阅读全文
posted @ 2019-10-21 19:48 birchtree 阅读(419) 评论(0) 推荐(0)
摘要:[BZOJ3451]Normal(点分治+FFT) 题面 给你一棵 n个点的树,对这棵树进行随机点分治,每次随机一个点作为分治中心。定义消耗时间为每层分治的子树大小之和,求消耗时间的期望。 分析 根据期望的线性性,答案是$\sum_{i=1}^n(i的期望子树大小)=\sum_{i=1}^n \su 阅读全文
posted @ 2019-10-13 11:51 birchtree 阅读(302) 评论(0) 推荐(0)