1234567891011121314151617181920212223242526272829303132333435 |
- #!/usr/bin/ruby
- # a(1)=1; a(n+1) = the largest prime divisor of A138793(n+1).
- # https://oeis.org/A138963
- # First several terms of the sequence:
- # 1, 7, 107, 149, 953, 218107, 402859, 4877, 379721, 4349353, 169373, 182473, 1940144339383, 2184641, 437064932281, 5136696159619, 67580875919190833, 1156764458711, 464994193118899, 4617931439293
- # a(n) = A006530(A138793(n)). - ~~~~
- include("../../../factordb/auto.sf")
- func a(n) {
- 1..n -> join.flip.to_i
- }
- var bfile = File("bfile.txt").open_w.autoflush(true)
- for n in (1..10000) {
- var k = a(n)
- var row = "#{n} #{gpf(k)||1}"
- say row
- bfile.say(row)
- }
- __END__
- # PARI/GP program:
- f(n) = my(s = ""); forstep (k=n, 1, -1, sk = digits(k); forstep (j=#sk, 1, -1, s = concat(s, sk[j]))); print(s); eval(s); \\ A138793
- f(n) = my(D = Vec(concat(apply(s->Str(s), [1..n])))); eval(concat(vector(#D, k, D[#D-k+1]))); \\ A138793
- a(n) = if(n == 1, 1, vecmax(factor(f(n))[,1])); \\ ~~~~
|