用C#解决最多约数问题

来源:百度知道 编辑:UC知道 时间:2024/05/10 06:11:28
正整数x的约数是能整除x的正整数。正整数x的约数个数记为div(x)。例如,1,2,5,10都是正整数10的约数,且div(10)=4。设a和b是2个正整数,a<=b,找出a和b之间约数个数最多的数x。

a到b进行连乘,得到的数就是了啊 ,因为a到b的每一个数都是他的约数

靠 不懂

public int div(int a, int b)
{
Dictionary<int, int> d = new Dictionary<int, int>();

for (int i = a; i <= b; i++)
{
d.Add(i, 0);
for (int j = 1; j <= i; j++)
{
if (i % j == 0)
{
d[i]++;
}
}
//Response.Write(i + "有约数:" + d[i] + "<br/>");

}

int temp = 0;
int maxNum = 0;
for (int i = a; i <= b; i++)
{
if (d[i] > temp)
{
temp = d[i];
maxNum = i;
}
}

//Response.Write(&q