编写一个程序判断给定的数是否为丑数。 丑数就是只包含质因数 2, 3, 5 的正整数。 示例 1: 输入: 6 输出: true 解释: 6 = 2 × 3 示例 2: 输入: 14 输出: false 解释: 14 不是丑数,因为它包含了另外一个质因数 7。 说明: 1 是丑数。 输入不会超过 3... ...
分类:
其他好文 时间:
2019-05-23 00:24:24
阅读次数:
106
/* 给定n,m 共有n个数的数组a,不超过m m^n减掉 gcd(a)>1的情况 先把m质因数分解 然后枚举不同的质因子个数即可 */ #include #include #include using namespace std; #define ll long long ll n,m,p[100... ...
分类:
其他好文 时间:
2019-05-14 20:48:56
阅读次数:
157
我的解法:先将1-1e5的非完全平方放入vector。非完全平方数的质因数分解的数量互质,比如12不是完全平方,2的个数(2个),和3的个数(1个),互质。而36有,2个2,2个3,数量不互质。非完全平方数的次方没有交集。比如2^2*3^6只能是(2*3^3的平方)。这样a,b之间的平方数个数就用1 ...
分类:
其他好文 时间:
2019-05-11 19:54:52
阅读次数:
132
题目链接:https://vjudge.net/problem/POJ-2407 题意:给出n,求0..n-1中与n互质的数的个数。 思路:欧拉函数板子题,先根据唯一分解定理求出n的所有质因数p1,p2,...,pn,然后根据Φ(m)=m*∏(1-1/pi)计算即可。 AC代码: ...
分类:
其他好文 时间:
2019-05-07 12:51:21
阅读次数:
93
直接筛质数肯定是不行的 用map<ll,ll>来保存质因子的指数 考虑只有3-5个因子的数的组成情况 必定是a=pq or a=p*p or a=p*p*p or a=p*p*p*p 先用二分判后面三种情况 然后判第一种情况 由于不知道pq,而且无法直接求,我们间接用 d=gcd(a[i],a[j] ...
分类:
其他好文 时间:
2019-05-01 17:21:14
阅读次数:
184
分解质因数(5分) 分解质因数(5分) 题目内容: 每个非素数(合数)都可以写成几个素数(也可称为质数)相乘的形式,这几个素数就都叫做这个合数的质因数。比如,6可以被分解为2x3,而24可以被分解为2x2x2x3。 现在,你的程序要读入一个[2,100000]范围内的整数,然后输出它的质因数分解式; ...
分类:
编程语言 时间:
2019-04-30 19:48:25
阅读次数:
149
筛素数 弱智筛法就不贴了 下面是埃氏筛 先补一个很有意思的东西 1+1/2+1/3+1/4+....+1/n=log n 线性筛代码 欧拉函数 对于大范围内求质因数个数硬解肯定太慢,用线性筛优化 先用线性筛找到每一个数的最小质因子(rec[i]) 分析:第二个if里,当i的指数>=2时就可以直接乘, ...
分类:
其他好文 时间:
2019-04-28 18:44:47
阅读次数:
153
题目链接:http://codeforces.com/problemset/problem/1141/A 首先,nn一定要是mm的倍数。否则就无法转换,输出 1; 然后令k=.\frac{m}{n} ,即k=.\frac{m}{n} . 将k 分解质因数,若分解结果是k=.\frac{m}{n} , ...
分类:
其他好文 时间:
2019-04-20 22:53:25
阅读次数:
182
http://acm.hdu.edu.cn/showproblem.php?pid=1019 LCM即各数各质因数的最大值,搞个map乱弄一下就可以了。 cpp include using namespace std; typedef long long ll; typedef unsigned i ...
分类:
其他好文 时间:
2019-04-20 00:00:21
阅读次数:
213
第一题 质因数分解 #include<bits/stdc++.h> using namespace std; int n,x,y; int main(){ cin>>n; for(int i=2;i<=n;i++) { if(n%i==0) { x=n/i; y=max(x,i); break; } ...
分类:
其他好文 时间:
2019-04-14 12:43:40
阅读次数:
103