首页 > 其他分享 >cf1184a3-solution

cf1184a3-solution

时间:2024-02-27 20:34:23浏览次数:20  
标签:多项式 bmod cf1184a3 solution 枚举 frac1 求值 mathcal

CF1184A3 Solution

link

题意:给你两个长度为 \(n\) 的小写字符串 \(s,t\) 和一个 \(m\),定义哈希函数

\[h(s)=\left(\sum_{i=0}^{n-1}s_ir^i\right)\bmod p \]

求构造 \((p,r)\) 且 \(p\ge m,r\in[2,p-1]\),使得 \(h(s)=h(t)\)。

\(n,m\le10^5\)。


题目即求一个多项式 \(f(x)=\sum_{i=0}^{n-1}(s_i-t_i)x^i\) 满足 \(f(r)\bmod p=0\)。

考虑一个朴素做法:随便选一个 \(p\),枚举 \(r\) 用多项式多点求值求出所有 \(f(r)\bmod p\),看看它是不是 \(0\)。

如果将 \(r\) 看作在 \([2,p-2]\) 上随机,\(f(r)\) 看作在 \([0,p)\) 上随机,那么对于单个 \(r\),\(f(r)\neq0\) 的概率是 \(1-\frac1 p\)。

那么所有 \(f(r)\) 都不为 \(0\) 的概率是 \((1-\frac1 p)^p\),由于 \(p\) 较大,这个数可以近似为 \(\frac1 e\thickapprox0.36\)。

那么我们多找几个 \(p\) 就基本上可以保证找出 \((r,p)\) 了。

问题是,这个做法是 \(\mathcal O(n\log^2n)\) 的,并且带有大常数,何况我不会任意模数多点求值/嘲讽。

考虑把多项式的规模变小。如果我们能找到 \(d\) 满足 \(r^d\equiv1\pmod p\),多项式的规模就降到了 \(d\)。

这里 \(d\) 显然有 \(d|p-1\)。考虑令 \(r=r_0^{\frac{p-1}d}\),那么 \(r^d\bmod p\) 肯定是 \(1\),只需要满足 \(r_0^{\frac{p-1}d}\bmod p\neq1,p-1\)。

我们考虑从小到大枚举 \(d\),再枚举 \(p\) 满足 \(d|p-1\),随机出满足条件的 \(r_0\) 搞出 \(r\),暴力算 \(f(r)\bmod p\) 的值。

这样子找不到 \(0\) 的概率提升了,变为 \((1-\frac1 d)^d\),但多点求值的复杂度降到了 \(\mathcal O(d\log^2d)\) 或 \(\mathcal O(d^2)\)。

经过测试可以通过(?),复杂度我也不知道是啥

标签:多项式,bmod,cf1184a3,solution,枚举,frac1,求值,mathcal
From: https://www.cnblogs.com/iorit/p/18037987

相关文章

  • cf1188e-solution
    CF1188ESolutionlink考虑\(x_i\)表示最后序列中每个数被操作的次数。显然我们可以假设\(\min\{x_i\}=0\)。仍然显然的是这样子的\(x\)序列与最后得到的序列一一对应,也就是说每个最终序列可以只能由一种\(x\)得到。那么就变成计数合法的\(x\)序列了。考虑\(x_i\)需......
  • cf1205d-solution
    CF1205DSolutionlink题意:给你一棵\(n\)个节点的树。请你给它的\(n-1\)条边确定权值,使得树上\(\dbinomn2\)条路径的权值和包含\(\displaystyle1\sim\left\lfloor\frac{2n^2}9\right\rfloor\)中所有整数。\(n\le1000\)。注意到有关树上路径问题,我们考虑设\(rt\)......
  • Rancher 无法删除集群的Solution
    Rancher无法删除集群的Solution不同版本的Rancher都能遇到该问题,此问题中,Rancher版本为v2.6.0当我们先删除节点,并在节点宿主机上删除了对应的服务器,再通过Rancher界面去删除托管/自建立集群时,往往这个操作会卡住,并出现报错:{"type":"error","links":{},"code":"PermissionDe......
  • Solution Set #11
    177qoj7607.TheDoublingGame2首先可以发现对于一个局面,操作到这个局面的方案是唯一的(考虑一条边左右的棋子数量,可以知道这条边的移动方向,删去所有不移动的边之后,每个联通块只有一个点有棋子,而对于只有根有棋子的局面构造显然唯一)据此可以\(\mathcal{O}(n^2)\)DP:设\(f_{u......
  • 2.22 闲话 & solution 『虽然我不是神/不像他们无所不能/却总畏惧一语成谶』
    有↑没有↓谁↑能够↓代↑替↓我↑(去考开学的一调)唐氏模拟赛,板子大战,全场都是板子,\(\textT3\)甚至还不如板子,\(byd\)题解居然是用的高贵的\(O(n\logn)\)算欧拉函数,唐\(\text{lxyt}\)复活赛打赢了可以去打\(\text{HEOI2024}\)了,体验名额DZ和xrlong的代码进行了大量对拍,仍......
  • solution-div2contest-D
    题面可以在link看到?大力手玩题!场切了!首先看到这种题,我们一定是先想给定一个树怎么求他的最大独立集。我忘记怎么贪心了,于是考虑DP,设\(f_{u,0/1}\)表示以\(u\)为根的子树中独立集包含或不包含\(u\)这个点的最大独立集大小。转移是显然的,为了下文讲解方便还是在这里写出......
  • 2.21闲话 & solution『 有没有/谁/能够代替我』
    上午有唐氏模拟赛,100/0/0/20,rk7/15,鉴定为最唐的一次T1签到题,思路很简单题面ame是一个可爱的女孩子,她想要你帮她排序。给定\(4\timesn\)个数,要求将其分为\(n\)组,使得对于每组四个数,所有组中的\(|a\timesb-c\timesd|\)和最大,求最大和。排序,对于前\(2n\)大的,尽量把大......
  • Solution Set【2024.2.21】
    [ARC162C]MexGameonTree可以发现若Bob在某个节点填了值\(K\),那么会直接导致其根链上的所有节点均不可能满足要求。因此若某个节点的子树内有不小于两个空位,那么Alice一定无法使该子树满足要求。若某节点子树内有一个空位且可以通过填上这一空位使其合法,那么Alice可......
  • 2.17 闲话 & solution『登陆宇宙/带着你所幻想的所有/灵魂加速失控 』
    拜谢了,您别Fake了,您当年自愿退出国集我是极力反对的,我知道您从小学一年级开始打NOI并且直接获得了金牌分数线上的好成绩,肆意AK了好几年NOI,直到近年才意识到自己太过强大只好肆意控分,NOIP2023的题目您当时拿到的一瞬间用\(\frac{2}{3}s\)就全部想到了正解,并在\(\frac{3}{2}......
  • 2.16 闲话 & solution『漆黑的夜中透出了一点点微光/早就应该习惯/忽明忽暗酒阑人散』
    为啥只有我和CuFeO4【数据删除】,别人都没【数据删除】,血亏,下次绝对不【数据删除】了明天有CF,希望能打在写\(\text{NTT}\)惹,但是没有达成写4题呜呜明天有模拟赛唔,首先是朴素\(dp\)骗分,设\(dp_{i,j}\)表示已经取到了\(i\)个,其中取模后结果为\(j\)的方案数,容易有转移\[......