其實是一道水題啦。。。
我一開始的做法近似埃拉託斯特尼篩法,列舉每個約數,然後將其倍數的約數個數加1,最後統計。而一種更為簡便的方法是列舉1到n所有數,給答案加上n/i。雖然這是道水題,但因為正解值得學習我才整理的!!!
為什麼這樣是對的呢?顯然,1到n所有數的約數個數之和等於約數中含有1,2,...,n的數的個數之和。
1 #include 2ac**(舊)3const
int maxn = 1e6 + 5;4
5int
n, m, f[maxn];67
intmain()
1 #include 2新3int
main()
AHOI2005 約數研究
非常簡單的乙個數學題。先放題目 科學家們在samuel星球上的探險得到了豐富的能源儲備,這使得空間站中大型計算機 samuel ii 的長時間運算成為了可能。由於在去年一年的辛苦工作取得了不錯的成績,小聯被允許用 samuel ii 進行數學研究。小聯最近在研究和約數有關的問題,他統計每個正數n的約...
AHOI2005 約數研究
發現luogu的ui改版後ac以後不能給題目評定難度了 類似素數篩的一道題,不過是約數。先順手寫了個暴力做法,tle定了 includeusing namespace std long long n,sum 1000005 int main printf lld sum n return0 暴力o ...
數論 AHOI2005 約數研究
題目 找規律 以6為例 約數有1的數有6個 1 2 3 4 5 6 約數有2的數有3個 2,4,6 約數有3的數有2個 3,6 約數有4的數有0個 約數有5的數有0個 約數有6的數有1個 6 所以 約數有x的數有n除以x個 即 fn n 1 n 2 n 3.n n 如下 include includ...