您的位置:首页 > 其它

uva294

2016-02-07 11:55 399 查看
/**********
author:chanjun2016
email:15755396353@163.com
***********/

#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <vector>
#include <string>
#include <map>
#include <set>
#include <algorithm>

using namespace std;

#define INF = 0x3f3f3f3f

long long count(int n){
long long cnt = 1;
int q = sqrt(n + 0.5);
for (int i = 2; i <= q; ++i){
if (n % i == 0){
int t = 1;
while (n % i == 0){
++t;
n /= i;
}
cnt = cnt * t;
}
}

if (n > 1){
cnt = cnt * 2;
}
return cnt;
}

int main(){
int T;
scanf("%d",&T);
while (T--){
int l,u;
scanf("%d%d",&l,&u);
long long ans = 0, m;
for (int i = l; i <= u; ++i){
long long t = count(i);
if (t > ans){
ans = t;
m = i;
}
}
printf("Between %d and %d, %lld has a maximum of %lld divisors.\n",l,u,m,ans);
}

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: