首页 > 其他分享 >JZOJ5787 轨道

JZOJ5787 轨道

时间:2024-06-07 10:56:13浏览次数:11  
标签:10 frac gcd 轨道 sum JZOJ5787 leq dp

JZOJ5787 轨道

题目大意

给出 \(n\),\(m\)。

需要构造一个长度为 \(n\) 的正整数序列 \(A\),其中 \(A_i \in [1,m]\)。

给出一个正整数 \(K\)。你的序列需要使的存在一个正整数 \(V\),使得 \(V \cdot K = \prod A_i\) 且 \(V\) 与 \(K\) 互质。

求出构造方案数。

其中 \(n \leq 30001, m \leq 10^9, K \leq 10^7\)。

解题思路

考虑 DP 设 \(dp(i,j)\) 表示构造到 \(i\) 位,使得 \(\prod A_i = j\) 的方案数。

这样显然开不下,但是发现其实我们只关心 \(\gcd(j,K)\)。

显然 \(\gcd(j,K)\) 是 \(K\) 的因数,我们将因数全部预处理出来,从小到大排列,记为数列 \(a\),这不会太多,数量 \(at \leq 1000\)。

同时记 \(mp(i)\) 表示 \(i\) 在 \(K\) 的因数中的排名。

所以我们将 \(dp(i,j)\) 含义改成:构造到 \(i\) 位,使得 \(\gcd(\prod A_i,K) = a[j]\) 的方案数。

那么我们可以推出状态转移方程:

\[dp(i,j) = \sum_{a(k)|a(j)} dp(i-1,k) \cdot dp(1,mp(\tfrac{a(j)}{a(k)})) \]

考虑如何实现转移,我们可以预处理出 \(a(j)\) 的所有因数,这将耗费 \(O(at^2) \leq 10^6\) 的时间。

经过预处理,转移的总时间消耗为 \(O(n\sum \sigma_0(a(i))) \leq 2*10^4 n \leq 6*10^8\),实际上这个数字会更加的小,其中 \(\sigma_0\) 表示因数个数。

我们解决了转移问题,接下来考虑如何求出 \(dp(1,j)\)。

考虑其含义,即数 \(x \in [1,m]\) 使得 \(\gcd(x,K) = a(j)\) 并且 \(\gcd(\frac{x}{a(j)},K) = 1\) 的个数。

直接枚举不可行,考虑进行一步转化,第二个条件等价于:

\[\gcd(\frac{x}{a(j)},\frac{K}{a(j)}) = 1 \]

第三个条件可以推出条件二,故关键在于条件三。

\[\gcd(\frac{x}{a(j)},K) = 1 \]

令 \(y \in [1,\dfrac{m}{a(j)}]\)。

即求 \(y\) 与 \(K\) 互质的个数,使用容斥原理。

即\(1\) 的倍数,减去 \(2\) 的倍数,减去 \(3\) 的倍数,加上 \(6\) 的倍数等等,的小学问题。

更具体的其容斥系数即为莫比乌斯函数 \(\mu\),不难理解。

更严谨的,使用莫比乌斯反演:

\[f(i) = \sum_{j}^{N} [\gcd(j,K)=i] \\ F(i) = \sum_{i|j} f(j) = \sum_{j}^{N} [i|\gcd(j,K)] = \lfloor \frac{N}{i} \rfloor \]

其中要求 \(i|K\)。

根据莫比乌斯反演,所求 \(f(1)\) 即为:

\[f(1) = \sum_{i|K} \mu(i) F(i) \]

线性筛出莫比乌斯函数 \(O(K) \leq 10^7\),预处理 \(O(at^2) \leq 10^6\)。

至此,我们解决了这个问题。

参考代码

标签:10,frac,gcd,轨道,sum,JZOJ5787,leq,dp
From: https://www.cnblogs.com/DeepSeaSpray/p/18236787

相关文章

  • 轨道控制器
    就是一个可以360转动的相机,通过不断的改变相机的参数然后渲染达到效果。 //引入相机控件 --轨道控制器//console.log('OrbitControls',OrbitControls);constcontrols=newOrbitControls(camera,renderer.domElement);//controls.addEventListener('change',func......
  • 陆探一号精密轨道文件的使用
    SAR数据的轨道信息是InSAR处理中非常重要的信息,影响图像配准精度,进而影响干涉图、形变图生成等环节。使用卫星精密轨道数据可以有效去除因轨道误差引起的系统性误差。大家用的比较多的是哨兵1的精密轨道文件,日前,陆探一号提供了精密轨道文件,在InSAR处理中可以有选择的使用。本文介......
  • 水果云仓_统一商品标准_统一销售_统一供货_统一分拣_统一配送_按品结算_财务清分_生鲜
    水果云仓_统一商品标准_统一销售_统一供货_统一分拣_统一配送_按品结算_财务清分_生鲜配送供应链系统_杭州生鲜配送系统之升鲜宝_大批量分拣_轨道动态秤使用(一)生鲜配送现在目前应用比较多的,就是按商品分拣,选择商品、电子秤传输数量、打印标签,然后按标签将商品放至对应的区域,所谓......
  • 【洛谷 P8695】[蓝桥杯 2019 国 AC] 轨道炮 题解(映射+模拟+暴力枚举+桶排序)
    [蓝桥杯2019国AC]轨道炮题目描述小明在玩一款战争游戏。地图上一共有NNN个敌方单位,可以看作2D平面上的点。其中第i......
  • 高 j 轨道上价核子波函数密度分布
    高\(j\)轨道即高\(l\)轨道,\(j\)是\(l\)与\(s\)的耦合:\[\vec{j}=\vec{l}\otimes\vec{s}.\]可以先不考虑自旋,定性了解氢原子波函数的几率分布。1.氢原子波函数氢原子波函数为\[\psi(n,l,m)=R_{nl}(r)Y_{lm}(\theta,\phi),\]其密度为\[|\psi|^2=|R_{nl}......
  • three.js-轨道控制器(OrbitControls)
    轨道控制器(OrbitControls)Orbitcontrols(轨道控制器)可以使得相机围绕目标进行轨道运动。要使用这一功能,就像在/examples(示例)目录中的所有文件一样,您必须在HTML中包含这个文件。进口OrbitControls是一个附加组件,必须显式导入。See Installation/Addons.import{OrbitCont......
  • 问题:主量子数n为3时,只有3s、3p和3d三个轨道
    问题:主量子数n为3时,只有3s、3p和3d三个轨道参考答案如图所示......
  • 模型评估与轨道
    模型评估与轨道一、模型评估的基本方法1.1监督学习下的泛化、过拟合与欠拟合在有监督的学习过程中,首先在训练数据上学得模型参数来构建模型,然后根据学得的模型,对新数据做出预测。用来训练的数据集称为训练集,用来测试预测结果是否准确的新数据称为测试集。注意:测试集中的数据不......
  • 通达信简单上下轨道指标公式源码副图
    VAR2:=MA(ADVANCE-DECLINE,3)/100;VAR3:=MA(CLOSE,5)*1.01;VAR4:=MA(OPEN,13)*1.01;VAR5:=(MA(HIGH,3)+MA(LOW,5)+MA(CLOSE,3)+MA(OPEN,3)+CLOSE+OPEN)/6+VAR2;VAR6:=IF(VAR4>VAR5,VAR4,VAR5);VAR7:=IF(VAR4<VAR5,VAR4,VAR5);VAR8:=3/100;下轨:MA(VAR7,5)*(1-VAR8......
  • 浅谈有源滤波装置在轨道交通行业的应用与选型
    摘要:轨道交通运行中需要大量的变频设备,导致其电网中含有大量的谐波,这些谐波影响到电网供电稳定性,从而威胁到城市轨道交通运输的安全性和稳定性。有源滤波装置在城市轨道交通中的应用,可以消除电网中的谐波,确保电网运行安全性。关键词:有源滤波;城市轨道交通;谐波治理0引言本文主要介绍......