2023-07-01 11:58:00 -04:00
|
|
|
func propdiv (n) {
|
2023-07-18 13:51:12 -07:00
|
|
|
n.divisors.first(-1)
|
2023-07-01 11:58:00 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
{|i| printf("%2d: %s\n", i, propdiv(i)) } << 1..10
|
|
|
|
|
|
|
|
|
|
var max = 0
|
|
|
|
|
var candidates = []
|
|
|
|
|
|
|
|
|
|
for i in (1..20_000) {
|
|
|
|
|
var divs = propdiv(i).len
|
|
|
|
|
if (divs > max) {
|
|
|
|
|
candidates = []
|
|
|
|
|
max = divs
|
|
|
|
|
}
|
|
|
|
|
candidates << i if (divs == max)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
say "max = #{max}, candidates = #{candidates}"
|