数学
文章平均质量分 94
616156
赛高______↑
展开
-
【数学&矩阵加速】hihocoder1555 四次方根
题目描述:当 HungryBacon 还是个小学生的时候,体育老师就告诉过他,求四次方程的根是非常简单的。小 HungryBacon 很聪明,并算出了方程 x4+ax3+bx2+cx+d=0x^4+ax^3+bx^2+cx+d=0的四个根x1, x2, x3, x4x_1, x_2, x_3, x_4。紧接着,他就找他的密友小 TinkEngineer 对答案,他们对答案的方式是计算 xn1原创 2018-01-15 16:26:59 · 285 阅读 · 0 评论 -
【数学】【图论】【DP】AGC009E Eternal Average
分析:首先要转换为一棵K度树,有N个权为0的叶子节点,有M个权位1的叶子结点。每个非叶子节点的权值为其所有儿子的权值的平均值。那么设1的点的深度分别为a1,a2,a3……ama_1,a_2,a_3……a_ma1,a2,a3……am0的点深度分别为b1,b2,b3……bnb_1,b_2,b_3……b_nb1,b2,b3……bn那么由于其是一颗K度树,所以必须满足:∑k−ai...原创 2018-09-24 21:17:20 · 168 阅读 · 0 评论 -
【概率与期望】【组合计数】TopCoder SRM 561 Orienteering
题意:给出一颗树,树上有些选中点CCC,现在随机从中选择一个大小为kkk的子集SSS,计算出一条包含所有SSS中的点的最短路径PPP,求PPP的期望长度。点数N≤2500,k≤∣C∣≤300N\le2500,k\le |C|\le 300N≤2500,k≤∣C∣≤300分析:每个SSS中的点在路径PPP上第一次被访问的顺序为:v0,v1,v2……v∣S∣−1v_0,v_1,v_2……v...原创 2018-10-11 21:05:19 · 311 阅读 · 0 评论 -
【组合计数】【莫队】博弈论与概率统计CodePlus2018三月赛D题
分析:种种神奇的原因(TYP对TLY无脑崇拜,TLY证了一个结论,TYP就说TLY把这题秒了),导致我以为是结论题,猜了半天。。。F***其实是一道有点坑的组合计数。首先,要明确题意:这题问的是在已确定输赢次数条件下概率,换句话说,每种局面发生的概率相同,且和为1。题目中给出的p是没用的。要输出一个分数,分母很好求,就是一个组合数C(n+m,n)C(n+m,n)C(n+m,n)分子如果O...原创 2018-12-28 11:38:36 · 281 阅读 · 0 评论 -
【DP】【强联通分量】【组合数学】CodeForces804F Fake bullions
分析:首先,观察i%su=i%svi\%s_u=i\%s_vi%su=i%sv这两个条件,无非就是说,对于u组中,某个拥有金块的人x,则所有v组中,满足x≡y(mod (su,sv))x\equiv y(mod\ (s_u,s_v))x≡y(mod (su,sv)) 的所有y都可以得到一个假的金块。由于这个贡献是可以传递的,那么在一个强联通分量中,由于其能到达任意一...原创 2018-12-25 09:37:24 · 236 阅读 · 0 评论 -
【矩阵加速】【数学】2019雅礼集训 math
题目:简单地说,就是对于n的每一个长度为m的划分(ki>0k_i>0ki>0),求出其贡献的值之和。分析:非常神奇的三角函数题:首先,可以想到,划分问题有一个很经典的DP定义DP(i,j)DP(i,j)DP(i,j)表示将i划分为j个的方案数。转移式为:DP(i,j)=DP(i−1,j−1)+DP(i−j,j)DP(i,j)=DP(i-1,j-...原创 2019-01-12 10:56:08 · 285 阅读 · 0 评论 -
【第一类斯特林数】【组合数学】2019雅礼集训 permutation
题目:求满足以下条件的排列数:刚好存在a个数,满足Pai>max{P1,P2,……Pai−1}P_{a_i}>max\{P_1,P_2,……P_{a_i-1}\}Pai>max{P1,P2,……Pai−1}刚好存在b个数,满足Pbi>max{Pn,Pn−1,……Pbi+1}P_{b_i}>max\{P_n,P_{n-1...原创 2019-01-12 13:02:20 · 327 阅读 · 0 评论 -
【数学】【无话可说】[Code+#4]组合数问题2
题意:在i,j≤Ni,j\leq Ni,j≤N的条件下,求出值最大的K个组合数CijC_i^jCij分析:真实题意:如何比较两个组合数的大小?答案是取对数然后化阶乘为前缀和,化乘除法为加减法。然后比较即可。为什么不会爆精度???万一第K大数和第K+1大数,数值极大又极其接近,那不就爆了吗???为什么连long double都不用就能卡过去???出题人真有意思。表示无F***可说...原创 2019-01-03 08:22:33 · 226 阅读 · 0 评论 -
【背包】【组合数学】BZOJ5215 [Lydsy2017省队十连测]商店购物
分析:背包+组合数学#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>#define SF scanf#define PF printf#define MAXN 310#define MAXM 10000010#define MOD原创 2019-02-28 10:05:50 · 155 阅读 · 0 评论 -
【数学】[Baltic2016][BZOJ5184] Spiral
分析:恶心至极。。。首先,把图拆成一个个的环,第一层是:1第二层是:2,3,4,5,6,7,8,9……然后,就可以发现,单独的一个环的贡献,可以在O(1)复杂度内算出来。(拆成四条边)然而这要T问题就在于如何快速求多个环的贡献。首先,我们可以把原矩阵也拆分了,拆分成数个部分环的组合:这样一来,每个部分环中,被剖分的矩形只有两种可能:可以通过推倒证明,在这两种情况下,每一...原创 2019-03-06 21:59:31 · 252 阅读 · 0 评论 -
【数学】省选四校联考 D1T1考考试
分析:显然,一个萌的数,必然满足其所有的后缀都是萌的数。所以,我们可以通过不停地在最高位加值来得到新的萌数。还有一个结论:设这个萌的数表示为:AkAk−1Ak−2……A0A_kA_{k-1}A_{k-2}……A_0AkAk−1Ak−2……A0则其必然满足:Ak∗(10k−2k)+Ak−1∗(10k−1−2k−1)+……+A0∗(100−20)=0 (mod&nbs...原创 2019-03-23 09:28:05 · 130 阅读 · 0 评论 -
【数学】省选四校联考 开开车
分析:这题超有(e)趣(xin)的。。。(又是一道结论题。。。)结论:对于一个三角划分(即题目中的划分方式),每次选择一条划分的边,将全图分为两个多边形,再各自选择一条划分的边,递归操作,一定存在某种方案,使得在很小的层数内全部划分为三角形。。。有了这个结论,这题就很好做了。可以每次选择那条边后,其左侧的点到达右侧的点一定经过这两个点中的一个,因此只需要把这两个点到达所有其他点的最短路...原创 2019-03-23 09:38:08 · 143 阅读 · 0 评论 -
【容斥】【数学】Atcoder ARC102 Stop. Otherwise...
题意:有N个K个面的骰子,当i=2,3,4……2*k时, 求所有骰子的点数中,没有任何两个之和为i的方案数。这N个骰子不互相区分(即1,2与2,1是同一种情况)分析:很简单的一道容斥题(无奈D看错题意调太久。。。)任何两个加起来不为i,所以这题就简单了。无非就是说对于jjj,要求i−ji−ji-j与它不能同时出现(i为偶数时,分两种情况讨论,即存在一个i2i2\frac i ...原创 2018-09-01 23:56:42 · 572 阅读 · 0 评论 -
【OEIS】Xor Sum AtCoder2272
分析:OEIS大法好哇。。。暴力打表然后去OEIS上面搜一下, get… 但似乎没有给公式啊 嗯。。再看看 似乎是这玩意的前缀和啊,这玩意给了个递推公式。。。 然后用数学老师讲的方法: a1=a1a1=a1a_1=a_1 a2=a1a2=a1a_2=a_1 a3=a1+a2a3=a1+a2a_3=a_1+a_2 a4=   &nbsp...原创 2018-08-07 21:10:16 · 880 阅读 · 4 评论 -
【DP】【组合数学】HDU6391 Lord Li's problem
分析:很典型的组合数学+DP的题。 定义DP[i][j]DP[i][j]DP[i][j]表示用i个数字,xor出来有j个1,且这i个数字互不相同的方案数。转移很简单: DP[i+1][j+3]+=DP[i][j]∗C(n−j,3)DP[i+1][j+3]+=DP[i][j]∗C(n−j,3)DP[i+1][j+3]+=DP[i][j]*C(n-j,3):选3个1,xor上去 DP[i...原创 2018-08-14 16:22:18 · 337 阅读 · 0 评论 -
【数学?】hihocoder1529 不上升序列
题目描述:给定一个长度为 n 的非负整数序列 a[1..n]。你每次可以花费 1 的代价给某个 a[i] 加1或者减1。求最少需要多少代价能将这个序列变成一个不上升序列。分析:我们设DP(i,j)表示前i个数已经满足不上升的情况下,第i个数为j的最小代价 转移式很好想: DP(i,j)=min(DP(i−1,k))(k≥j)+|ai−j|DP(i,j)=min(DP原创 2018-01-16 14:50:06 · 344 阅读 · 2 评论 -
【总结】FFT算法在信息竞赛中的应用
FFT算法本身就是一种优化,优化(类似)卷积运算的时间复杂度 (卷积:∑i,jai∗bj−i∑i,jai∗bj−i\sum_{i,j}a_i*b_{j-i})。 FFT的本质,其实是利用复数的一些特殊性质,将一个多项式快速地在点值和系数两种表示方法间来回切换。再利用两个多项式点值表示法相乘的复杂度为O(n),来达到降时间的目的。FFT算法的前导概念首先介绍关于复数的一些定义及性质 ...原创 2018-02-05 11:45:06 · 1335 阅读 · 0 评论 -
【总结】积性函数前缀和(杜教筛)
前言:据CCH和LJH说,杜教筛似乎是一个非常套路的东西,几乎所有的杜教筛的题目推理方式都是一模一样的(但实测有些推理还是很恶心的)。所以复习杜教筛不需要太多时间,粗略看一遍,留下印象即可。杜教筛其实是一种简化运算的推理方式,它的使用条件并不仅限于积性函数(?),只是积性函数可以将复杂度进一步优化。例题:求欧拉函数前缀和因为杜教筛是一种推理方式,所以直接给出例题反而容易上手...原创 2018-03-09 12:02:48 · 2261 阅读 · 0 评论 -
【容斥原理】(AtCoder Regular Contest 093 F) Dark Horse
题意:有2N2N2^N个选手参与一场比赛,比赛规则是:相邻的两个人比赛一次,败者淘汰掉,胜者继续进行,直到只剩一个人为止。 现在给出1号选手会败给哪些选手(实力摸得很清楚啊) 并且已知其他选手之间均满足:两个选手比赛,编号小的一定会胜利。 现在可以安排每个选手初始的位置,要 钦定 1号选手 Chicken Dinner 最后获胜,求能满足条件的初始位置的方案数。分析:首先...原创 2018-03-28 21:20:43 · 346 阅读 · 0 评论 -
【总结】概率与期望
前言作为NOIP级的知识点,概率与期望算是比较困难的类型了。 但其实也不是无法解决的难题。本文主要通过作者本人的刷题经历,对概率期望类题目进行总结。概率51Nod1639绑鞋带:有n根鞋带混在一起,每根鞋带有两个鞋带头。现在重复n次以下操作:随机抽出两个鞋带头,把它们绑在一起。求最终只形成一个环的概率?依次考虑每一步操作,现在已经选出来了一个头,它必须和非它所在的链的另一...原创 2018-05-31 15:54:31 · 2473 阅读 · 0 评论 -
【数学】AtCoder Grand Contest 026 rng_10s
题意:一家商店里有A瓶饮料,有一个老逗逼每天白天都会来到商店,磕B瓶饮料,到了晚上,当商店老板发现店里的饮料少于C瓶时,就会购入D瓶。 现在这个老逗逼想知道能不能无限地嗑下去(即每天都能磕B瓶)。分析:首先,有几个显而易见的特判: 1、A<BA<BA < B,那么第一天就不够了 2、D<BD<BD < B,那么无论商店老板怎原创 2018-07-15 17:54:19 · 646 阅读 · 5 评论 -
【组合计数】【DP】AGC001 BBQ Hard
分析:首先,很容易得到一个简单的表达式: ∑i,j(i≠j)CAi+AjAi+Aj+Bi+Bj∑i,j(i≠j)CAi+Aj+Bi+BjAi+Aj\sum_{i,j(i≠j)}C_{A_i+A_j+B_i+B_j}^{A_i+A_j} 然而会T。。。。观察一下这个式子有什么几何意义: CAi+AjAi+Aj+Bi+BjCAi+Aj+Bi+BjAi+AjC_{A_i+A_j+B_i+B...原创 2018-07-22 11:18:07 · 204 阅读 · 0 评论 -
【数学】Codeforces499Div1 CF1010C Border
题意:给出n个数,求这n个数在mod k意义下通过相加能凑出多少种数。分析:额,其实稍微学过一点数论的人应该都会。。。 无非就是把每个给定的数aiaia_i求一个最大公因数(最后还要和k取公因数!!!就因为这个惨遭hack。。。。)。凑出来的数一定是这个公因数g的倍数。证明?额,不妨去看看拓欧是怎么证明的#include<cstdio>#include<c...原创 2018-07-27 13:08:00 · 224 阅读 · 0 评论 -
【筛法】Codeforces1017F The Neutral Zone
分析:就是个算贡献的水题。。。但出题人相当无聊。。。把内存卡得爆小。。。只有16M。。。。不得不说CF的评测机真心快。。。n=3∗108n=3∗108n=3*10^8的情况下nlognnlognnlogn居然还能卡进2s(卧槽不科学啊啊)其实就是个埃氏筛,但是由于n=3∗108n=3∗108n=3*10^8且内存只有16M,bitset也只能存大概10810810^8位,出题人以为这样...原创 2018-08-09 13:26:36 · 250 阅读 · 1 评论 -
【数学】Codeforces1016G Appropriate Team
分析:其实如果把ai,x,yai,x,ya_i,x,y的范围调小一点,这就是道不折不扣的水题了。。。如果y%x!=0y%x!=0y\%x!=0那么一定无解。对x、yx、yx、y唯一分解,再对aiaia_i因数分解,分别考虑其作为gcd的一侧和作为lcm的一侧的答案。因为哪怕是1018101810^{18}、质因数种类也不会超过18个 当aiaia_i为gcd时,首先必须满足ai%...原创 2018-08-05 17:21:22 · 290 阅读 · 0 评论 -
【组合数学】【Lucas】HDU6372 sacul
分析:原来倒着读题目就是题解啊。。。。出题人很皮。。。恩。。lucas定理在组合数学中还算是比较常见的了,之前在CQOI2018就遇到一道可以用Lucas骗分的(运气好还能卡过)的题。。。其实lucas定理本身还是比较简单的(看着隔壁的EXLucas瑟瑟发抖。。。) C(n,m)%p=(C(np,mp)∗C(n%p,m%p))%pC(n,m)%p=(C(np,mp)∗C(n%p,m%...原创 2018-08-10 18:43:07 · 417 阅读 · 0 评论 -
【复杂度玄学】【数学】省选模拟51nod 乘法表
分析:搞不懂为什么理论复杂度那么大。。但是的确跑不满。。。根据题意,得到g∣10dc+dbb′+10dca′g|\frac {10^{dc+db}} {b'}+\frac {10^{dc}} {a'}g∣b′10dc+db+a′10dc其中g=(a,b),a′=a/g,b′=b/gg=(a,b),a'=a/g,b'...原创 2019-04-01 07:51:04 · 241 阅读 · 0 评论