D - Sigma Function(算数基本定理+思维)

该博客探讨了如何利用算数基本定理和Σ函数来解决编程竞赛中的问题。通过分析质因子及其指数,确定了因子和为奇数的条件,即数必须为完全平方数或其一半为完全平方数。因此,问题转化为计算小于等于给定数n中完全平方数和半个完全平方数的个数。
摘要由CSDN通过智能技术生成

题目http://lightoj.com/volume_submit.php?problem=1336

唯一分解定力一个正整数: 可以表示为 N = p1a1 + p2a2+…pnan

因子和可以表示为 sum = (1+p11+…p1a1)(1+p2…)…(1+pn+…pnn);

①如果因子和是偶数只要得到其中一个(1+p1 …pnn)内是偶数就行, 那么就要求有几个这样的数

②或者可以考虑 通过只求 因子和为奇数的 数的个数 让后 n - 因子和为奇数的个数

所以采用第二种:

对于质因子2, 不论指数是 偶数 还是基数 得到的结果都是 (1+…2^n) == (1+偶数+偶数+偶数) 最后结果为奇数

如果这个数是 的因子和为奇数 只能是所有(1+p1+p2…) === (1+偶数个奇数) 这种形式, 即除2以外的质因子
的指数an为偶数

那么, 因子和为奇数的数可以表示为 N = (p1a1/2 * p2a2/2 … pnn/2)*(p1a1/2 * p2a2/2 … pnn/2)2 , 如果2的指数为奇数 N = (p1a1/2 * p2a2/2 … pnn/2</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值