Processing math: 100%

07 2018 档案

摘要:题目大意:给你一棵n个点的树,每个点有一个点权x,问你所有路径中点权异或和最大的路径的异或和 数据范围:n30000x2311。 如果是边上有点权的话非常简单,直接一个trie就可以水过去了。 然而这题是点权,非常烦人。我们考虑用点分治去解决。 假设当前需要遍历的树 阅读全文
posted @ 2018-07-29 11:20 AlphaInf 阅读(400) 评论(0) 推荐(3) 编辑
摘要:题目大意:你有一个nm的网格(有边界),你从(1,1)开始随机游走,求走到(n,m)的期望步数。 数据范围:n10m1000。 我们令 f[i][j]表示从(1,1)随机游走到(i,j)的期望步数。不难推出: 如果(i,j)与边界不想邻,则有 $f[i][ 阅读全文
posted @ 2018-07-28 11:41 AlphaInf 阅读(506) 评论(3) 推荐(4) 编辑
摘要:概述 多项式开跟是一个非常重要的知识点,许多多项式题目都要用到这一算法。 用快速数论变换,多项式求逆元和倍增法可以在O(nlogn)的时间复杂度下求出一个n次多项式的开根。 前置技能 快速数论变换(NTT),多项式求逆元,二次剩余。 多项式的开根 给定一个多项式A(x),其次数为$d 阅读全文
posted @ 2018-07-26 17:41 AlphaInf 阅读(2241) 评论(4) 推荐(30) 编辑
摘要:我们构造f(x)的生成函数G(x),那么显然[xk]G(x)=Ok2+Sk+U 那么显然,答案即为ni=1[xm]Gi(x) 我们构造答案的生成函数F(x)=ni=1Gi(x) 根据等比数列求和公式,$F(x)=G(x)\df 阅读全文
posted @ 2018-07-26 12:11 AlphaInf 阅读(295) 评论(0) 推荐(0) 编辑
摘要:又是一道FFT套路题 思路可以参考bzoj4503,题解 我们对串S和串T中出现的*处全部赋值为0。 反正最终的差异度式子大概就是 C[i]=|T|1j=0S[i+j]T[j](S[i+j]T[j])2 然后和上一题一样的展开方式,将T串reverse一下做FFT再统计 阅读全文
posted @ 2018-07-25 20:00 AlphaInf 阅读(174) 评论(0) 推荐(0) 编辑
摘要:FFT套路题(然而我看错题了) 我们考虑化一下式子。 设当前比较的两个部分为S[i....i+|T|1]T[0....|T|1]。 我们对串T中出现问号的位置全部赋值为0。 我们定义一个差异度$C[i]=\sum_{j=0}^{|T|-1}T[j](S[i+j]-T[j]) 阅读全文
posted @ 2018-07-25 18:04 AlphaInf 阅读(394) 评论(0) 推荐(0) 编辑
摘要:哇我太菜啦555555 不妨钦定我们需要访问的点集为S,在S已知的情况下,我们令f(x)表示从x走到点集S中任意一点的期望步数。 若xS,则显然f(x)=0,否则f[x]=1d[x]f[ch[x]]+1。其中d[x]表示与x相连 阅读全文
posted @ 2018-07-25 08:58 AlphaInf 阅读(390) 评论(2) 推荐(0) 编辑
摘要:题目大意:给你m个数ai,定义n=Πmi=1ai。将n分解质因数为Πpkiipi是质数。请输出2max(ki)1,以及存在多少个ki,满足ki=max(ki)。 数据范围:m600,$a_i≤10^{ 阅读全文
posted @ 2018-07-03 17:51 AlphaInf 阅读(324) 评论(0) 推荐(0) 编辑
摘要:这题一看显然是一个裸的斯坦纳树 我们用f[i][j]表示经过的路径中包含了状态i所表示的点,且连接了j号点的最短路径。 显然,f[i][j]=min{f[i^k][j]+f[k][j]}, 其中i&k=k。 转移完毕后,跑一个最短路去更新一遍。 那么显然这题的 阅读全文
posted @ 2018-07-01 09:50 AlphaInf 阅读(322) 评论(1) 推荐(0) 编辑

点击右上角即可分享
微信分享提示