One-two primes
say "Smallest n digit prime using only 1 and 2:"
for k in (0..20) {
['1','2'].variations_with_repetition(k, {|*a|
var p = Num(a.join)
if (p.is_prime) {
printf("%4d. %s\n", k, p)
break
}
})
}
for k in (100..2000 `by` 100) {
['1','2'].variations_with_repetition(k-1, {|*a|
var p = Num(a.join + '1')
if (p.is_prime) {
var t = Str(p)
var i = t.index('2')
printf("%4d. (1 x %s) %s\n", k, i, t.substr(i))
break
}
})
}Output:
Last updated
Was this helpful?