这题不难吧,如果正在做组合的题。。。使用容斥原理求解出(1~x)的与p互素的和,这是很容易的,很明显,首先要把p分解质因数。而对于第二个操作,记录下他的转换的顺序,当要执行第一个操作时,遍历一次记录下的操作转换就可以了。呃,这题虽然想到,但是,我的WA。看了网上的,思路和我的一样,我自己COPY别人...
分类:
其他好文 时间:
2014-10-01 22:31:31
阅读次数:
212
package com.hpu.bai;/** * 此程序用来把一个正整数分解成质因数相乘 如 20 = 2*2*5; * @author bai * */public class Byprime { public static int prime(int m){ ...
分类:
编程语言 时间:
2014-09-27 19:32:10
阅读次数:
324
分解质因数求最大公约数求最小公倍数牛顿迭代求平方根分解质因数import java.util.ArrayList;import java.util.List;public class Solution { // 返回质因数分解 List getPrimeFactors(int n) { ...
分类:
其他好文 时间:
2014-09-17 18:19:42
阅读次数:
241
POJ1365_Prime Land【质因数分解】【素数】【水题】...
分类:
其他好文 时间:
2014-09-17 10:19:42
阅读次数:
229
题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。def foo(n): while 1: for i in range(2,n+1): if n%i==0: print i, ...
分类:
编程语言 时间:
2014-09-12 21:54:14
阅读次数:
319
题意:给定gcd(a,b)和lcm(a,b) 求使得a+b最小的 a,b思路:结合算数基本定理中 gcd lcm的质因子表示形式把lcm(a,b)质因数分解 以后 通过dfs找到 a+b最小的a b即可#include #include#include#includeusing namespace ...
分类:
其他好文 时间:
2014-09-12 20:41:34
阅读次数:
225
使用Pollard_rho算法分解lcm/gcd的质因数,原因不说也明白了。然后排序,把相同的质因子合并,因为如果相同的质因子分落在两个因数,会使ab的GCD值改变。然后,枚举各种组合,呃。。。。这个实在想不到好方法,只好枚举了,真想不明白,那么两位数时间的是怎么样做到的。#include #inc...
分类:
其他好文 时间:
2014-09-09 11:30:38
阅读次数:
221
题目大意:
给出m个查询,查询出[ l - r] 之间去 这个区间所有的数都互质的数有多少个。
思路分析:
首先我们处理出来每一个位置,左边和右边第一个与之不互质的数的位置。记在pre 和 next下。这个方法用分解质因数就好。
一个区间内的答案,等于这个区间的所有数减去有与之互质数的个数。
现在要统计的就是
1.对于一个给定的查询[l,r] 区间,统计有多少个 i (l
2...
分类:
其他好文 时间:
2014-09-07 01:07:24
阅读次数:
289
对于任何正整数x,其约数的个数记作g(x)。例如g(1)=1、g(6)=4。如果某个正整数x满足:g(x)>g(i) 02000000000∴最多只用用到这么多不同的质因数。搜索即可。加两个剪枝:①从小到大枚举质因数,不要让 顺序不同的 算作不同的方案。②小的因数的指数必然大于大的因数的指数,∵约数...
分类:
其他好文 时间:
2014-09-06 16:04:33
阅读次数:
221
templatevoid swap(T* a, T* b){ T temp = *a; *a = *b; *b = temp;}//数组的全排列void perm(int list[], int k, int m){ if (k==m) { copy(list,list+m...
分类:
其他好文 时间:
2014-09-04 20:44:00
阅读次数:
235