最多約數問題。正整數x 的約數是能整除x的正整數,其約數的個數記爲div(x),例如div(10)=4。設a 和b 是兩個正整數,找出a 和b 之間約數個數最多的數x 的約數個數。
樣例輸入:
136
樣例輸出:
9
#include<stdio.h>
#include<math.h>
#include<iostream>
using namespace std;
int isprime(int n)
{
for(int i=2;i<(n/2)+1;i++)
{
if(n%i==0)
{
return 0;
}
}
return 1;
}
int main()
{
int a,b,temp;
int cnt=0,mx=-1;
cin>>a>>b;
for(int i=a;i<=b;i++)
{
temp=i;
int result=1;
for(int j=2;j<i;j++)
{
if(isprime(j))
{
cnt=0;
while(temp%j==0)
{
cnt++;
temp/=j;
}
result*=cnt+1;
}
}
if(result>mx)
{
mx=result;
}
}
cout<<mx;
return 0;
}