lanqiao 19711 宝石组合
This commit is contained in:
@@ -1,10 +1,20 @@
|
||||
// lanqiao 19711 宝石组合
|
||||
#include<bits/stdc++.h>
|
||||
using namespace std;
|
||||
/*
|
||||
解析:
|
||||
唯一分解定理:
|
||||
任何一个大于1的自然数N,如果N不是质数,那么N可以唯一分解成有限个质数的乘积
|
||||
N1=p1^a1*p2^a2*...*pn^an
|
||||
N2=p1^b1*p2^b2*...*pn^bn
|
||||
则gcd(N1, N2)=p1^min(a1, b1)*p2^min(a2, b2)*... *pn^min(an, bn)
|
||||
则lcm(N1, N2)=p1^max(a1, b1)*p2^max(a2, b2)*...*pn^max(an, bn)
|
||||
假设Ha,Hb,Hc相同质因子的幂次分别为x,y,z则题目中的表达式等价于
|
||||
x+y+z+max(x,y,z)-max(x,y)-max(x,z)-max(y,z)
|
||||
*/
|
||||
const int N = 1e5 + 10;
|
||||
int a[N];
|
||||
vector<int> fac[N], s[N];
|
||||
|
||||
int main() {
|
||||
for(int i = 1; i <= 1e5; i++){
|
||||
for(int j = i; j <= 1e5; j += i){
|
||||
|
||||
Reference in New Issue
Block a user