0
已解决
董宇昊
初级启示者
初级启示者
经验值:0
题目描述 Description
给定一个正整数n(2<=n<=10000000),求不超过n的有最多质因数(重复的质因数只算一个)的最小的数,且输出其不重复的质因数个数。
输入描述 Input Description
一个正整数n
输出描述 Output Description
一行,满足条件的数及其不重复的质因数个数,用空格隔开
样例输入 Sample Input
20
样例输出 Sample Output
6 2
数据范围及提示 Data Size & Hint
在不超过20的整数中,6有最多的质因数(2个)且最小(10,12,14,15,16,18,20的不重复的质因数都是2个,但是比6大)。
最近,有人沈**说我水到了中级天翼,我才没有,到了初级天翼,我一直没有水,有本事你找一个我水的历史呀?(我到初级天翼以后)
1
已采纳
邹昊轩
资深光能
资深光能
循环(int i=2;i<=n;i++){
如果(a[i]==0){
循环(int j=i*2;j<=n;j+=i){
a[j]++;
}
}
}
循环(int i=2;i<=n;i++){
如果(a[i]>m){
m=a[i];
x=i;
}
}
输出x和m
定义a数组,m,x, long long类型
定义整形n
0
0
张恩泽
高级天翼
高级天翼
先写一个函数判断是不是质数,然后再在main函数里
for(long long i=2;i<=n;i++)
{
if(b[i]>m)
{
m=b[i];
m1=i;
}
}
这样写,最后输出m和m1
0