A332341 Prime scale sequence (see comments).
-2, -3, 5, -7, -11, -13, 31, -17, -19, -23, 59, -29, -37, -41, 107, -43, -47, -53, -61, -67, 271, -71, -73, -79, 223, -83, -89, -97, 269, -101, -103, -109, 313, -113, -127, -131, -137, -139, 647, -149, -151, -157, 457, -163, -167, -173, 503, -179, -181, -191, -193, -197, 941
Offset: 1
Keywords
Examples
2 and 3 unbalance the scale (and are negative), but 5 = 2 + 3 balances it (and is positive).
Links
- Michael S. Branicky, Table of n, a(n) for n = 1..10000
Programs
-
Mathematica
a[1]=-2;a[n_]:=a[n]=Module[{tab=Table[a[i],{i,1,n-1}], totalN=Abs[Total[Select[Table[a[i],{i,1,n-1}],Negative]]], totalP=Total[Select[Table[a[i],{i,1,n-1}],Positive]], l=NextPrime[Last[Select[Table[a[i],{i,1,n-1}],Negative]],-1], m=NextPrime[Abs[Last[Select[Table[a[i],{i,1,n-1}],Negative]]]]}, If[totalN==totalP,If[PrimePi[tab[[-1]]]-PrimePi[Abs[tab[[-2]]]]==1,-NextPrime[tab[[-1]]], If[FreeQ[Abs[tab],m],-m,While[!FreeQ[Abs[tab],m],m=NextPrime[m]];-m]], If[PrimeQ[totalN-totalP]&&FreeQ[Abs[tab],totalN-totalP],totalN-totalP, If[FreeQ[Abs[tab],Abs[l]],l,While[!FreeQ[Abs[tab],Abs[l]],l=NextPrime[l,-1]];l]]]];a/@Range[53]
-
Python
from itertools import islice from sympy import isprime, nextprime def agen(): # generator of terms used, d, nextp = set(), 0, 2 while True: if d > 0 and d not in used and isprime(d): used.add(d); yield d; d = 0 while nextp in used: nextp = nextprime(nextp) used.add(nextp); yield -nextp; d += nextp print(list(islice(agen(), 53))) # Michael S. Branicky, May 12 2022
Comments