7.29 day6数学

战绩

100+100+100+25=325

(数学不行实锤了,好多人AK

T1

线性筛里,每个数都会被他最小的质因数筛到,令

f(x)=[x%p==0]pdangerous

这显然是个完全积性函数,线性筛即可

时间复杂度:O(n)

T2

考虑这棵树实质上是一个以1为根,边权为大于父亲边权的质数,节点值则为到根路径上边权累乘

那么我们要求x,y之间路径实质上是dep[x]+dep[y]dep[lca]2+1

lca则是x,y相同最多的最小质因数

比如 111 555
111 = 3 * 37
555 = 3 * 5 * 37

LCA(111,555)=3

每个数最小质因数显然也可以线性筛直接求

时间复杂度:O(nlogn)

T3

考虑直接枚举y+xyx的值

c1=y+xc2=yx

y=c1+c22x=c1c22

值最大到2n-1

这样我们去枚举分子分母是O(Vans)的,但是maxans=2e8+

考虑刚刚柿子在y+xyx是奇数还是偶数时的贡献

发现奇数时每个枚举的分数都可以,而偶数只有一半能计入贡献

所以我们就很简单了

	for(int i=2;i<=2*n-1;i++){
		if(i&1)ans+=2*n/(i+1);
		else ans+=((2*n)/(i+1))/2;
	}

时间复杂度:O(n)

T4

很简单,赛时想复杂了

考虑i个数要想lcm是x,那么他们一定都是x的约数

这是必要不充分的,因为有可能没有覆盖到x的所有质因子,所以lcm是x的一个因数,所以我们考虑容斥

用全部的可能数量即dxk减去因数的答案

fi=dikj|ifj

时间复杂度O(nlogn)

扩展题:

n5000m1e9

求:

fi=j=0mji

简述思路,待补:二项式定理找出递推式

posted @   Linnyx  阅读(20)  评论(1编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示