This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.
%I A350404 #27 Mar 01 2022 05:32:01 %S A350404 1,0,1,2,1,2,3,4,6,10,16,26,45,78,138,244,439,784,1417,2572,4698,8682, %T A350404 16021,29720,55146,102170,190274,356804,671224,1269022,2404289, %U A350404 4521836,8535117,16134474,30635869,58062404,110496946,210500898,401422210,767158570,1467402238 %N A350404 Number of solutions to +-2 +- 3 +- 5 +- 7 +- ... +- prime(n) = 0 or 1. %H A350404 Alois P. Heinz, <a href="/A350404/b350404.txt">Table of n, a(n) for n = 0..2000</a> %e A350404 a(6) = 3: 2 + 3 + 5 - 7 + 11 - 13 = %e A350404 -2 + 3 + 5 - 7 - 11 + 13 = %e A350404 -2 + 3 - 5 + 7 + 11 - 13 = 1. %p A350404 s:= proc(n) s(n):= `if`(n<1, 0, ithprime(n)+s(n-1)) end: %p A350404 b:= proc(n, i) option remember; `if`(n>s(i), 0, `if`(i=0, 1, %p A350404 b(n+ithprime(i), i-1)+b(abs(n-ithprime(i)), i-1))) %p A350404 end: %p A350404 a:=n-> b(0, n)+b(1, n): %p A350404 seq(a(n), n=0..45); # _Alois P. Heinz_, Jan 16 2022 %t A350404 s[n_] := s[n] = If[n < 1, 0, Prime[n] + s[n - 1]]; %t A350404 b[n_, i_] := b[n, i] = If[n > s[i], 0, If[i == 0, 1, %t A350404 b[n + Prime[i], i - 1] + b[Abs[n - Prime[i]], i - 1]]]; %t A350404 a[n_] := b[0, n] + b[1, n]; %t A350404 Table[a[n], {n, 0, 45}] (* _Jean-François Alcover_, Mar 01 2022, after _Alois P. Heinz_ *) %o A350404 (Python) %o A350404 from itertools import product %o A350404 from sympy import prime, primerange %o A350404 def a(n): %o A350404 if n == 0: return 1 %o A350404 nn = ["0"] + [str(i) for i in primerange(2, prime(n)+1)] %o A350404 return sum(eval("".join([*sum(zip(nn, ops+("", )), ())])) in {0, 1} for ops in product("+-", repeat=n)) %o A350404 print([a(n) for n in range(18)]) # _Michael S. Branicky_, Jan 16 2022 %o A350404 (Python) %o A350404 from sympy import sieve, primerange %o A350404 from functools import cache %o A350404 @cache %o A350404 def b(n, i): %o A350404 maxsum = 0 if i == 0 else sum(p for p in primerange(2, sieve[i]+1)) %o A350404 if n > maxsum: return 0 %o A350404 if i == 0: return 1 %o A350404 return b(n+sieve[i], i-1) + b(abs(n-sieve[i]), i-1) %o A350404 def a(n): return b(0, n) + b(1, n) %o A350404 print([a(n) for n in range(43)]) # _Michael S. Branicky_, Jan 16 2022 %Y A350404 Cf. A000040, A022894, A025591, A113040. %K A350404 nonn %O A350404 0,4 %A A350404 _Ilya Gutkovskiy_, Dec 29 2021 %E A350404 a(39)-a(40) from _Michael S. Branicky_, Jan 16 2022