UVA 10622 - Perfect P-th Powers
题目链接
题意:求n转化为b^p最大的p值
思路:对n分解质因子,然后取所有质因子个数的gcd就是答案,但是这题有个坑啊,就是输入的可以是负数,负数的情况比较特殊,p只能为奇数,这时候是要把答案不断除2除到为奇数即可。
代码:
#include
#include
#include
long lon...
分类:
其他好文 时间:
2014-06-24 23:30:45
阅读次数:
169
质数与合数
摘自维基百科:
质数,又称素数,指在大于1的自然数中,除了1和此整数自身外,无法被其他自然数整除的数(也可定义为只有1和本身两个因数的数)。
比1大但不是素数的数称为合数。1和0既非素数也非合数。素数在数论中有着非常重要的地位。
质因数分解 即
分解质因数 。每个合数都可以写成几个质数相乘的形式。其中每个质数都是这个合数的因数,叫做这个合数的分解质因数。 分...
分类:
其他好文 时间:
2014-06-20 10:31:18
阅读次数:
274
题意:给定b数列,计算有多少种数列 a1,a2,...,an 满足条件
a1*a2*...*an=b1*b2*…*bn (ai>1).
解法:处理出b数列中出现的所有质因子的数量记录在map中,然后进行容斥计算:
代码:/******************************************************
* author:xiefubao
********...
分类:
其他好文 时间:
2014-06-15 20:06:24
阅读次数:
191
题意:1,3是完美数,如果a,b是完美数,则2+a*b+2*a+2*b,判断给出的n是否是完美数。
解法:开始只看出来2+a*b+2*a+2*b=(a+2)*(b+2)-2,没推出更多结论,囧。没办法,只能暴力将所有的完美数求出来然后查表。正解是c+2=(a+2)*(b+2);完美数都是有质因子3或5组成的(5本身除外);
自己暴力代码:/*******************...
分类:
其他好文 时间:
2014-06-15 17:00:37
阅读次数:
205
UVA 294 - Divisors
题目链接
题意:求一个区间内,因子最多的数字。
思路:由于区间保证最多1W个数字,因子可以遍历区间,然后利用事先筛出的素数求出质因子,之后因子个数为所有(质因子的个数+1)的积
代码:
#include
#include
#include
using namespace std;
const int N = 35005;
in...
分类:
其他好文 时间:
2014-06-15 10:17:36
阅读次数:
158
整数分解(Integer
factorization)又叫质因数分解(质因子分解)是指把一个正整数写成几个素数的乘积。最简单的算法是,从2到N进行试除,能整除的时候就说明找到了一个新的因子,而这个过程中由于是从较小的数開始除起所以必然会先找到能整除的最小的素数。#include
void pd(in...
分类:
其他好文 时间:
2014-05-27 00:38:50
阅读次数:
310
筛素数,分解质因子 1 //Accepted 620 KB 15 ms 2 //wa1 MAXN
太小了一开始用的10005; 3 //wa2 没判断素数 4 //wa3 分解质因子用的小于n 5 #include 6 #include 7 const
int MAXN = 1000...
分类:
其他好文 时间:
2014-05-25 14:52:12
阅读次数:
168
1 /** 2 大意:给定一组ai,bi . m = a1^b1 *a2^b2 * a3^ b3 *
a4^b4*...*ai^bi 3 求最小的x!%m =0 4 思路: 将ai 质因子分解,若是x!%m=0 那么x! 质因子分解之后
质因子的个数一定大于等于m的个数。二分求解可得 5 ...
分类:
其他好文 时间:
2014-05-13 21:36:03
阅读次数:
348
1 /** 2 大意: 计算 a^b 的所有因子的和, 和mod 9901 3 思路; 将a
进行质因子分解,那么所有因子的和为 4 (2^0+ 2^1 + 2^2 +....+ 2^a1)*(3^0 + 3^1+..+ 3^a2)*..... 5
注意: 求模n下a的逆,需要 gcd(a,n).....
分类:
其他好文 时间:
2014-05-13 21:31:55
阅读次数:
429