约数研究(洛谷-P1403)
生活随笔
收集整理的這篇文章主要介紹了
约数研究(洛谷-P1403)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題目描述
科學家們在Samuel星球上的探險得到了豐富的能源儲備,這使得空間站中大型計算機“Samuel II”的長時間運算成為了可能。由于在去年一年的辛苦工作取得了不錯的成績,小聯(lián)被允許用“Samuel II”進行數(shù)學研究。
小聯(lián)最近在研究和約數(shù)有關的問題,他統(tǒng)計每個正數(shù)N的約數(shù)的個數(shù),并以f(N)來表示。例如12的約數(shù)有1、2、3、4、6、12。因此f(12)=6。下表給出了一些f(N)的取值:
?
f(n)表示n的約數(shù)個數(shù),現(xiàn)在給出n,要求求出f(1)到f(n)的總和。
輸入輸出格式
輸入格式:
輸入一行,一個整數(shù)n
輸出格式:
輸出一個整數(shù),表示總和
輸入輸出樣例
輸入樣例#1:
3
輸出樣例#1:
5
思路:整除分塊,莫比烏斯反演的基礎,整除分塊的具體思路:點擊這里
源代碼
#include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> #include<string> #include<cstdlib> #include<queue> #include<set> #include<map> #include<stack> #include<ctime> #include<vector> #define INF 0x3f3f3f3f #define PI acos(-1.0) #define N 50001 #define MOD 1e9+7 #define E 1e-6 #define LL long long using namespace std; int main() {int n;cin>>n;int sum=0;for(int i=1,j;i<=n;i=j+1){j=n/(n/i);sum+=(n/i)*(j-i+1);}cout<<sum<<endl;return 0; }?
總結
以上是生活随笔為你收集整理的约数研究(洛谷-P1403)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数字三角形(洛谷-P1118)
- 下一篇: 训练日志 2018.12.2