http://www.cnblogs.com/rausen/p/4138233.html#include#includeusing namespace std;#define MOD 1000000007int n;bool Not[1000001];int pr[1000001],e,ci[100...
分类:
其他好文 时间:
2015-06-18 23:31:57
阅读次数:
260
计算一个给定区间中因数最多的数。
分析:数论、组合数学。题目的数据的比较大,如果暴力一定会超时,那么就考虑利用其他方法求解。
我们将给定数字因式分解,那么因数的个数就是π(各质因子数+1)。(每个质因子取0~上限个)
因为数据时在10^9之内,所以质因数只能是33333以内的素数,利用筛法将素数打表计算即可。
#include...
分类:
其他好文 时间:
2015-06-16 23:03:55
阅读次数:
153
题目非常好懂,题意是给你n!和k个后缀零数,让你求出符合条件的进制b的个数。
假设你已经会求n!的质因数分解,再解释第一组样例。n=10,k=2,n!的阶乘可以表示为2^8*3^4*5^2*7,再转换成这种形式(2^4*3^2*5)^2*7,可以知有多少种进制满足条件,就是2^4*3^2*5的组合,一共有5*3*2种,其中肯定有不满足条件的,2^0,2^1,2^2,3^0,3^1,5^0,一共有3...
分类:
其他好文 时间:
2015-06-10 09:00:25
阅读次数:
129
英文描述:Design an algorithm to find the kth number such that the only prime factorsare 3, 5, and 7思路:质因数只能为3,5,7,设这个数为val,则val = (3^i)(5^j)(7^n) (i,j,n>=...
分类:
其他好文 时间:
2015-06-09 19:35:03
阅读次数:
92
题意:输出第n大的质因数只有2,3,5,7的数
分析:预处理满足这些条件的数,然后输出dp[n]就行,满足条件的数无非就是2,3,5,7不断的做乘积
这题的关键就是如何把这些乘积从小到大存入数组:设置四个计数器p2,p3,p5,p7完成这个任务
代码:
#include
#include
#define min(a,b) (a<b?a:b)
using namespace std;
int...
分类:
其他好文 时间:
2015-06-06 23:34:39
阅读次数:
162
链接 :
??
http://acm.hdu.edu.cn/showproblem.php?pid=4497
如果G不是L的约数 就不可能找到三个数。
L的所有素因子一定包含G的所有素因子 并且次方数一定大于等于G的。只需要三个数 对于每一个素因子的次方数 三个的最小值是G的,最大值是L的。考虑三个对应的次方数都不一样,那么其中两个是确定的 一个是G的一个是L的 剩下的一个在G和L的之间。...
分类:
其他好文 时间:
2015-06-03 15:48:41
阅读次数:
112
题意:求满足gcd(x,y,z)=G,lcm(x,y,z)=L的x,y,z的解的个数。大致思路:首先如果L % G != 0那么无解,否则令u = L / G,问题变为,gcd(r,s,t)=1,lcm(r,s,t)=u的解的个数。然后将u分解质因数,令u=a1p1*...*akpk,考虑一种质因数...
分类:
其他好文 时间:
2015-06-03 06:06:57
阅读次数:
151
/****************************************************************将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。**************************************************....
分类:
其他好文 时间:
2015-06-02 16:56:20
阅读次数:
111
任何数在计算机内部都是用二进制表示的,可以用这个特性来快速判断N!的二进制表示中最低位1的位置。
解法一:
将一个数的二进制数除以2,若二进制数的末尾是0,则能整除,否则不能整除。
因此,求 N!的二进制表示中最低位1的位置 即为求 N!中有多少个质因数2
以下为代码1:
#include
using namespace st...
分类:
其他好文 时间:
2015-06-01 09:42:03
阅读次数:
131
因为n!是一个非常大的数,所以不能通过常规的方法,求出n!的值之后,再判断它的末尾有多少个0.
这里的关键就是,n!的末尾有多少个0,取决于n!中,质因数 5 的个数。
如:12!=479001600 ,其中,5、10各含有1个质因数5,所以12!末尾有2个0
代码1:
#include
using namespace std;
int...
分类:
其他好文 时间:
2015-06-01 09:40:05
阅读次数:
136