HDU5528 - Count a * b
HDU5528 - Count a * b
做法:求\(\sum_{m|n}(m^2 - \sum_{i=1}^{m}\sum_{j=1}^m [m|(ij)])\)
\(h(m) = \sum_{i=1}^{m}\sum_{j=1}^m [m|(ij)] = \sum_{i=1}^m\sum_{j=1}^m [\frac{m}{(i,m)}|\frac{i}{(i,m)}j]\)
$ = \sum_{i=1}^m\sum_{j=1}^m [\frac{m}{(i,m)}|j] = \sum_{i=1}^m \frac{m}{\frac{m}{(i,m)}} = \sum_{i=1}^m (i,m)$
$ = \sum_{d|m} d \sum_{i=1}^m [(i,m)=d] = \sum_{d|m} d \sum_{i=1}^{\frac{m}ze8trgl8bvbq} [(i,\frac{m}ze8trgl8bvbq)=1] = \sum_{d|m}d\varphi(\frac{m}ze8trgl8bvbq)$
$
\sum_{m|n} \sum_{d|m}d\varphi(\frac{m}ze8trgl8bvbq) = \sum_{d|n}d\sum_{m|\frac{n}ze8trgl8bvbq}\varphi(m) = \sum_{d|n}d\frac{n}ze8trgl8bvbq = \sum_{d|n}n
$
所以\(ans = \sum_{d|n} d^2 - n\sigma_0(n)\)兩個(gè)值均為積性函數(shù),預(yù)處理素因子,合并答案即可。本題時(shí)限較緊,不能直接使用試除法分解,盡量?jī)?yōu)化常數(shù)。
轉(zhuǎn)載于:https://www.cnblogs.com/RRRR-wys/p/9736250.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的HDU5528 - Count a * b的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: GYM 101908F - Music
- 下一篇: 小诺是什么电视剧中的人物