
数学-因数分解
Endless_Way
这个作者很懒,什么都没留下…
展开
-
BZOJ 1053 [HAOI2007]反素数ant
质因数+搜索显然最终答案x的质因数一定是所有质数中最小前几项,否则一定可以把较大的质因数换成一个较小的没用过的质数,而答案更优。发现只要前十多个质数乘起来就可以超过2000000000,于是开始爆搜。#include<cstdio>#include<cmath>#include<algorithm>using namespace std;int cnt=11, prime[12]={1,2,原创 2016-09-14 10:23:12 · 331 阅读 · 0 评论 -
BZOJ 1968 [Ahoi2005]COMMON 约数研究
分解因数+暴力。暴力对于每个因数计算他在1~n的出现次数。#include<cstdio>int main(){ int n, ans=0; scanf("%d",&n); for(int i = 1; i <= n; i++) ans+=n/i; printf("%d\n",ans); return 0;}原创 2016-08-23 23:09:24 · 311 阅读 · 0 评论 -
UOJ 48 [UR #3]核聚变反应强度
GCD+质因数分解我们可以发现sgcd一定是gcd除以自己的一个最小质因数。于是我们考虑如何找到这个最小质因数。枚举的时间复杂度是不对的。(但是听说能有很多分?)仔细观察就会发现,我们每次都是在做gcd(a1,ai)那么gcd的质因数一定也都是a1的质因数,那么预处理出a1的所有质因数即可,只有log(a1)个。时间复杂度就是O(sqrt(a)+n*log(a))。一直有地方忘记开LL,吃枣药丸#i原创 2016-10-16 11:28:11 · 553 阅读 · 0 评论 -
BZOJ 2721 [Violet 5]樱花
线性筛神犇题解:http://blog.youkuaiyun.com/popoqqq/article/details/45095755我太弱了,推到x=y∗n!y−n!x=\frac{y * n!}{y-n!}的时候没有想到把分母设成t,导致看不出什么关系。由于换元之后有x=m2t+n!x=\frac{m^2}{t}+n!,要求x和t是整数,那么关系就很明了了。。。这一题告诉我们以后推式子要熟练换元,特别是分母原创 2016-10-02 16:45:31 · 435 阅读 · 0 评论 -
BZOJ 1025 [SCOI2009]游戏
将各个数字与它的对应数字连边,就可以得到若干个环。排数就是这些环的最小公倍数,且节点数为n。于是题意就是问和为n的若干个数的最小公倍数(LCM)有多少种。记f[i][j]表示前i个质数的和为j时的LCM方案数。f[i][j]=f[i-1][j]+∑q[i]k≤jk=1f[i−1][j−q[i]k]\sum_{k=1}^{q[i]^k≤j} f[i-1][j-q[i]^k] #include<cstd原创 2016-08-01 13:33:32 · 326 阅读 · 0 评论