| DATA
|
1, 2, 3, 4, 3, 1, 5, 6, 3, 2, 2, 2, 3, 7, 8, 9, 3, 10, 1, 11, 3, 12, 1, 9, 3, 10, 13, 14, 3, 15, 12, 16, 3, 6, 17, 18, 3, 19, 20, 21, 3, 1, 9, 22, 3, 23, 12, 24, 3, 25, 17, 26, 3, 27, 28, 29, 3, 10, 30, 23, 3, 31, 32, 11, 3, 11, 8, 33, 3, 34, 35, 36, 3, 11, 37, 38, 3, 39, 40, 41, 3, 5, 2, 42, 3, 43, 44, 45, 3, 1, 46, 47, 3
|
| PROG
|
(PARI)
up_to = 65537;
rgs_transform(invec) = { my(om = Map(), outvec = vector(length(invec)), u=1); for(i=1, length(invec), if(mapisdefined(om, invec[i]), my(pp = mapget(om, invec[i])); outvec[i] = outvec[pp] , mapput(om, invec[i], i); outvec[i] = u; u++ )); outvec; };
A163511(n) = if(!n, 1, my(p=2, t=1); while(n>1, if(!(n%2), (t*=p), p=nextprime(1+p)); n >>= 1); (t*p));
A113415(n) = if(n<1, 0, sumdiv(n, d, if(d%2, (d+1)/2)));
memoA349915 = Map();
A349915(n) = if(1==n, 1, my(v); if(mapisdefined(memoA349915, n, &v), v, v = -sumdiv(n, d, if(d<n, A113415(n/d)*A349915(d), 0)); mapput(memoA349915, n, v); (v)));
A366875(n) = A349915(A163511(n));
v366878 = rgs_transform(vector(1+up_to, n, A366875(n-1)));
A366878(n) = v366878[1+n];
|