1. 程式人生 > >數論分塊 【數學】

數論分塊 【數學】

端點 span 一起 str bzoj tro mil strong 數列

數論分塊

數論分塊也是很重要哦(dalao說以後莫比烏斯反演要用到)

經典栗子: for i=1~n 求 ∑x=(n/i) (註:這裏()表示為下取整)

普通人一般暴力,復雜度 O(n)

這裏就要用到數論分塊。

我們可以模擬一下, 發現 x 在一定的區間內值不變。

這裏就可以分塊了。把值不變的每一塊左端點、右端點算出來,就可以等差數列一起求和了。

這只是數論分塊入門應用,後續待填坑。。。

推薦裸題:BZOJ2956 模積和

數論分塊 【數學】