發現luogu的ui改版後ac以後不能給題目評定難度了……
類似素數篩的一道題,不過是約數。
先順手寫了個暴力做法,tle定了~
#includeusing暴力o(n²),20分。namespace
std;
long
long n,sum[1000005
];int
main()
printf(
"%lld
",sum[n]);
return0;
}
聯想埃式素數篩法,我們把迴圈稍(da)作(liang)改動,
從1到n遍歷,把每個數連同他的所有不超過n的倍數所對應的sum陣列++:
#includeusingac我們就得到了乙個o(nloglogn)近似於線性的優化演算法~(這nloglogn是我胡扯的,真正的時間複雜度及其推出過程請看luogu題解)namespace
std;
long
long n,sum[1000005
];int
main()
最後陣列累加。
AHOI2005 約數研究
非常簡單的乙個數學題。先放題目 科學家們在samuel星球上的探險得到了豐富的能源儲備,這使得空間站中大型計算機 samuel ii 的長時間運算成為了可能。由於在去年一年的辛苦工作取得了不錯的成績,小聯被允許用 samuel ii 進行數學研究。小聯最近在研究和約數有關的問題,他統計每個正數n的約...
AHOI2005 約數研究
其實是一道水題啦。我一開始的做法近似埃拉託斯特尼篩法,列舉每個約數,然後將其倍數的約數個數加1,最後統計。而一種更為簡便的方法是列舉1到n所有數,給答案加上n i。雖然這是道水題,但因為正解值得學習我才整理的!為什麼這樣是對的呢?顯然,1到n所有數的約數個數之和等於約數中含有1,2,n的數的個數之和...
數論 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...