模板
如果 n = p1^c1 * p2^c2 *..
.*pk^ck
約數個數: (c1 +1)
*(c2 +1)
*...
*(ck +1)
約數之和: (p1^
0+ p1^1+
...+ p1^c1)*.
..*(pk^
0+ pk^1+
...+ pk^ck)
給定n個正整數ai,請你輸出這些數的乘積的約數個數,答案對109+7取模。
第一行包含整數n。
接下來n行,每行包含乙個整數ai。
輸出乙個整數,表示所給正整數的乘積的約數個數,答案需對109+7取模。
1≤n≤100,
1≤ai≤2∗10932
68
#include
using
namespace std;
typedef
long
long ll;
const
int mod =
1e9+7;
intmain()
}if(x >
1) hash[x]++;
}for
(auto i : hash) ans = ans*
(i.second +1)
% mod;
cout << ans;
return0;
}
約數個數 約數之和
給乙個數n,求它的約數個數 因為n可以唯一分解成質因數的乘積即 n p 1 p 2 p t 所以n的約數c的形式應該是 c p 1 p 2 p t 對於任何兩組不同的 beta 1,beta t 的取值,由算數基本定理得c是不同的,由於 beta i 的取值為 0,1,alpha i 共 alpha...
約數個數定理
編輯 對於乙個大於1正整數n可以 分解質因數 則n的 正約數的個數就是 其中a 1 a2 a 3 ak是p 1 p2 p 3,p k的指數。編輯首先同上,n可以 分解質因數 n p1 a1 p2 a2 p3 a3 pk ak,由約數定義可知p1 a1的約數有 p1 0,p1 1,p1 2.p1 a1...
數論 約數個數
這題是個大水題,只不過資料稍微大了點。結果大家都用那啥的模擬。結果哈哈哈哈哈哈。求a b之間每個數的約數個數的總和。input 一行兩個正整數a b,以乙個空格隔開。output 一行乙個整數,即答案。資料範圍 對於50 的資料,1 a b 1000 對於100 的資料,1 a b 10,000,0...