随笔分类 - 算法->数论
摘要:"【51nod】1602 矩阵方程的解" 这个行向量显然就是莫比乌斯函数啦,好蠢的隐藏方法= = 然后我们尝试二分,二分的话要求一个这个东西 $H(n) = \sum_{i = 1}^{n} \mu(i) == d$ 当然$\mu(x)$由于一些很好的性质,这个东西可以用分类讨论做出来 众所周知,求
        阅读全文
                
摘要:【洛谷】P5348 密码解锁 很显然我们可以推导出这个式子 设$a(m)$为$m$位置的值 $$ \mu(m) = \sum_{m | d} a(d) \\ a(m) = \sum_{m|d}\mu(\frac{d}{m})\mu(d) \\ a(m) = \sum_{i = 1}^{\lfloor
        阅读全文
                
摘要:LOJ 3096. 「SNOI2019」数论 如果$P Q$我们把$P$和$Q$换一下,现在默认$P define fi first define se second define pii pair define mp make_pair define pb push_back define spa
        阅读全文
                
摘要:题解 复杂度怎么算也要2s的题怎么0.5s就跑完了,迷啊 这个题简直算完复杂度不敢写,写了就赚飞了好吧 根据裴蜀定理,显然选出的数和P的gcd是w的约数 我们考虑枚举$P$的约数,上限当然是$\sqrt{P}$个,写个暴力搜一下发现最多也就13000个左右 然后我们把每个数处理成$gcd(a_i,P
        阅读全文
                
摘要:题解 从每个质因子小到大指数非严格递减,直接搜就行 代码
        阅读全文
                
摘要:A Colorful Slimes 2 找相同颜色的一段,然后答案加上段长除2下取整 代码 C String Coloring 题解 直接折半搜索即可 用哈希表维护前半部分拆分方式的两个字符串的哈希值 再枚举后一半的拆分方式查哈希表即可 代码 D Histogram Coloring 题解 我们考虑
        阅读全文
                
摘要:题解 用lucas随便分析一波就出来了 $\binom{n}{k} = \binom{n % p}{k % p}\binom{n / p}{k / p}$ 那么对于一个余数r,如果r k % p那么会比前一个问题少乘一个$\binom{\lfloor \frac{n}{p} \rfloor % p}
        阅读全文
                
摘要:题解 可以说是什么找规律好题了 但是要推生成函数,非常神奇…… 任何的一切都可以用$n^2$dp说起 我们所求即是 所有树的叶子总数/所有树的方案数 我们可以列出一个递推式,设$g(x)$为$x$个节点构成的树的总数 那么有 $g(n) = \sum_{i = 0}^{n 1}g(i) g(n 1 
        阅读全文
                
摘要:题解 我们把这个函数的递归形式画成一张图,会发现答案是到每个出度为0的点的路径的方案数 这个可以用组合数算 记录一下P[i]为i减几次PI减到4以内 如果P[i + 1] P[i],那么转向的路径走P[i]次,否则走P[i] 1次 代码 cpp include include include inc
        阅读全文
                
摘要:题解 这题还要判无解真是难受…… 我们发现我们肯定能确定1的位置,1左右的两个区间是同理的可以确定出最小值的位置 我们把区间最小值看成给一个区间+1,构建出笛卡尔树,就求出了每一次取最小值和最小值左右的区间大小 然后就相当于左右子树的排列方式,乘上把左右子树那么多个元素选出左子树个数和右子树个数那么
        阅读全文
                
摘要:题解 容斥题 我们枚举出现次数最多的数出现了K次 然后我们需要计算的序列是所有数字出现个数都不超过K 1次 我们枚举不合法的数字的数目j,说明这个排列里除了我们固定出现K次的数至少有j个数是不合法的,先让这j个数每个数出现k次,然后再随意排列 j最大是N / K 那么复杂度就是调和级数了 代码 cp
        阅读全文
                
摘要:题解 可重元素的全排列都是很熟知的东西了 就是 $\frac{n!}{\prod c_{i}!}$其中$c_{i}$是第i种数出现的次数 我们对于每个元素统计一下多少排列里这个数会被统计进去 我们对于一个M,如果a里面大于M的数有k个,那么每个被统计进的元素和这些数都不相同,被统计进的元素需要出现在
        阅读全文
                
摘要:题解 蒟蒻只会$O(nAB)$的dp= = 那么先说答案 $S_{u}(n 1,a + b 2) \binom{a + b 2}{a 1}$ 其中$S_{u}(n,m)$表示无符号第一类斯特林数(求n个数排列成m个圆的方案数) 怎么样呢,除了最高的柱子,剩下的一定是 一个高的柱子,后面跟着一些小于它
        阅读全文
                
摘要:题解 九条可怜还有那么善良的一面??? 显然有些数在这个区间里没有数是它的约数,它们其中的最后一个取的一定就是$t(p)$的值 这样我们只需要枚举$t(p)$的值,这个值就是“没有任何数是自己的约数”最后出现的位置 假如这个位置是$k$,总共“没有任何数是自己的约数”有$tot$个,我们选择第$k$
        阅读全文
                
摘要:题解 K次剩余终极版!orz 写一下,WA一年,bug不花一分钱 在很久以前,我还认为,数论是一个重在思维,代码很短的东西 后来。。。我学了BSGS,学了EXBSGS,学了模质数的K次剩余……代码一个比一个长…… 直到今天,我写了240行的数论代码,我才发现数论这个东西= =太可怕了 好吧那么我们来
        阅读全文
                
摘要:我居然每道题都能想出来 虽然不是每道题都能写对,debug了很久/facepalm C Many Medians 排序后前N/2个数的中位数时排序后第N/2 + 1的数 其余的中位数都是排序后第N / 2的数 cpp include include include include include i
        阅读全文
                
摘要:可以说是第一场AGC了,做了三道题之后还有30min,杠了一下D题发现杠不出来,三题滚粗了 rating起步1300+,感觉还是很菜。。。 只有三题水平显然以后还会疯狂 啊(CF的惨痛经历) 改题的感觉似乎还不错因为思维都非常的妙(我根本想不到) A Zero Sum Ranges 开场娱乐大家的小
        阅读全文
                
摘要:斐波那契(fib.pas/c/cpp)题目大意众所周知,斐波那契数列就是 F(n)=F(n-1)+F(n-2),F(1)=F(2)=1,然后大小为 n 的一维斐波那契表就是 F(1),F(2),F(3),F(4)…F(n)。我们定义二维的斐波那契表的第(i,j)个位置也就是a(i,j)=F(i+j-
        阅读全文
                
摘要:——————————————————————————题解 路径的长度是1-200000 然后路径的条数有n*(n+1)/2 根据鸽巢原理n*(n+1)/2 > 200000就一定是YES 所以复杂度只有n^2
        阅读全文
                
摘要:E. Ladies' Shop time limit per test 8 seconds memory limit per test 256 megabytes input standard input output standard output A ladies' shop has recen
        阅读全文
                
 
                    
                
 浙公网安备 33010602011771号
浙公网安备 33010602011771号