A324351 Square array read by antidiagonals: A(x,y) is the result from writing x and y in primorial base (A049345) and starting from their least significant ends, always choosing a minimal digit from each digit position, and converting back to decimal.
0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 2, 2, 0, 0, 0, 1, 2, 3, 2, 1, 0, 0, 0, 2, 2, 2, 2, 0, 0, 0, 1, 0, 3, 4, 3, 0, 1, 0, 0, 0, 0, 0, 4, 4, 0, 0, 0, 0, 0, 1, 2, 1, 0, 5, 0, 1, 2, 1, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2, 2, 0, 0, 0, 1, 2, 3, 2, 1, 6, 1, 2, 3, 2, 1, 0, 0, 0, 2, 2, 2, 2, 6, 6, 2, 2, 2, 2, 0, 0, 0, 1, 0, 3, 4, 3, 6, 7, 6, 3, 4, 3, 0, 1, 0
Offset: 0
Examples
The array A begins: 0 1 2 3 4 5 6 7 8 9 10 11 12 x/y ------------------------------------------------------ 0: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ... 1: 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, ... 2: 0, 0, 2, 2, 2, 2, 0, 0, 2, 2, 2, 2, 0, ... 3: 0, 1, 2, 3, 2, 3, 0, 1, 2, 3, 2, 3, 0, ... 4: 0, 0, 2, 2, 4, 4, 0, 0, 2, 2, 4, 4, 0, ... 5: 0, 1, 2, 3, 4, 5, 0, 1, 2, 3, 4, 5, 0, ... 6: 0, 0, 0, 0, 0, 0, 6, 6, 6, 6, 6, 6, 6, ... 7: 0, 1, 0, 1, 0, 1, 6, 7, 6, 7, 6, 7, 6, ... 8: 0, 0, 2, 2, 2, 2, 6, 6, 8, 8, 8, 8, 6, ... 9: 0, 1, 2, 3, 2, 3, 6, 7, 8, 9, 8, 9, 6, ... 10: 0, 0, 2, 2, 4, 4, 6, 6, 8, 8, 10, 10, 6, ... 11: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 6, ... 12: 0, 0, 0, 0, 0, 0, 6, 6, 6, 6, 6, 6, 12, ... etc. In primorial base, 5 is written as "21" (as 5 = 2*2 + 1*1) and 10 is written as "120" (as 10 = 1*6 + 2*2 + 0*1). Aligning them digit by digit (from the least significant end), and then always choosing a lesser digit leaves us with digits "020", which is 4 written in primorial base as 2*2 + 0*1 = 4, thus A(5,10) = A(10,5) = 4.
Links
Programs
-
PARI
up_to = 65703; \\ = binomial(362+1,2) A002110(n) = prod(i=1,n,prime(i)); A276085(n) = { my(f = factor(n)); sum(k=1, #f~, f[k, 2]*A002110(primepi(f[k, 1])-1)); }; A276086(n) = { my(i=0,m=1,pr=1,nextpr); while((n>0),i=i+1; nextpr = prime(i)*pr; if((n%nextpr),m*=(prime(i)^((n%nextpr)/pr));n-=(n%nextpr));pr=nextpr); m; }; A324351sq(row,col) = A276085(gcd(A276086(row),A276086(col))); A324351list(up_to) = { my(v = vector(up_to), i=0); for(a=0,oo, for(col=0,a, if(i++ > up_to, return(v)); v[i] = A324351sq(a-col,col))); (v); }; v324351 = A324351list(up_to); A324351(n) = v324351[1+n]; \\ Antti Karttunen, Feb 25 2019
Comments