题意:一个数的真因数指不包括其本身的所有因数,给定L,R,求这个区间的所有数的最大真因数之和. 思路:min25筛可以求出所有最小因子为p的数的个数,有可以求出最小因子为p的所有数之和. 那么此题就是对于所有素数因子,求它对应的和. #include<bits/stdc++.h> using namespace std; #define ll unsigned long long ; ll Sqr,vis[maxn],pri[maxn],sp[maxn],tot,m,id1[maxn],id2
题意 题目链接 Sol min25筛的板子题,直接筛出\(g(N, \infty)\)即可 筛的时候有很多trick,比如只存\(\frac{N}{x}\)的值,第二维可以滚动数组滚动掉 #include<bits/stdc++.h> #define LL long long //#define int long long using namespace std; const int MAXN = 2e6 + 10; int Lim, vis[MAXN], prime[MAXN], tot;