我想在Mathematica中编写一个程序并查找整数n,以便以下定义适用于任何1< m< n
f(n)/ f(m)> 1 + log(n / m)/(log n loglog m)
其中f(n)是n的除数。 (并且还计算结果集的数量)
我编写了以下代码,但问题是当它在下一步找到第一个“j1”时,它会查找值“j2”,其中f(j2)/ f(j1)> 1 + log (j2 / j1)/(log j2 log log j1) 但我希望它找到“j2”这样
f(j2)/ f(j)> 1 + log(j2 / j)/(log j2 log log j)
对于所有j为j1< = j< J2
注意:在以下示例中,k [*]是一个特殊且已知的整数子序列。
由于
i = 20;
count = 0;
list = {i};
For[j = i, j <= 500, j++,
If[ f[k[j]]/f[k[i]] > 1 + Log[k[j]/k[i]]/(Log[k[j]] Log[Log[k[i]]]), i = j;
AppendTo[list, i];
count = count + 1
]
];
list
Print["count= ", count]