问题标题: 酷町堂:酷町堂:3530

0
0
已解决
许天奕
许天奕
新手守护
新手守护

3530   数的约数

题目描述 Description

现在需要你求出[a,b]间的因数个数最多的那个数。(测试数据比较大,需要你用合适的算法哦)

输入描述 Input Description

只有一行,给出扫描的范围,由下界a和上界b确定。

输出描述 Output Description

对于给定的范围,输出该范围内因数个数D最多的数P。若有多个,则输出最小的那个。请输出“Between a and b,P has a maximum of D divisors.”,其中a,b,P和D的含义同前面所述。

样例输入 Sample Input

 

1000 2000

样例输出 Sample Output

 

Between 1000 and 2000, 1680 has a maximum of 40 divisors.

数据范围及提示 Data Size & Hint

2≤a≤b≤1000000000

(备注:请附上思路和核心代码,否则本人不采纳!!!)


0
已采纳
黄子扬
黄子扬
新手守护
新手守护

楼上优秀

为什么你要问这种难度5的问题

而且连看都不看就问

你想想疯了啊

不过我知道方法

先分解质因数

36=2*2*3*3=pow (2,2)*pow (3,2);

所有质因数的指数+1
2:2+1=3

3:2+1=3;

3*3=9

所以36有9个因数

是不是很简单

 

 

0
0
高梓荣
高梓荣
新手天翼
新手天翼

真是一种想举报的节奏,孩子我帮你实现!

0
时梓繁
时梓繁
修练者
修练者

我只能给予你头文件了:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll L,R,ans,tot,c[27];
ll s[27]={0,2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,91,97};
inline void check(ll sum)
{
0
杨子阳
杨子阳
新手守护
新手守护

对不起,我不知道,抱歉回答不上,我自卑。

我要回答