login
a(0) = 0, a(1) = 1; for n > 1, a(n) = a(n-1) + g - 1 if a(n-1) is prime, otherwise a(n) = a(n-1) + g + 1, where g = a(n-1) - a(n-2).
1

%I #80 Sep 21 2022 12:00:17

%S 0,1,3,4,6,9,13,16,20,25,31,36,42,49,57,66,76,87,99,112,126,141,157,

%T 172,188,205,223,240,258,277,295,314,334,355,377,400,424,449,473,498,

%U 524,551,579,608,638,669,701,732,764,797,829,860,892,925,959,994,1030,1067,1105,1144,1184

%N a(0) = 0, a(1) = 1; for n > 1, a(n) = a(n-1) + g - 1 if a(n-1) is prime, otherwise a(n) = a(n-1) + g + 1, where g = a(n-1) - a(n-2).

%H John Tyler Rascoe, <a href="/A355697/a355697.jpg">Illustration of first 15 terms</a>

%e 0 = 0

%e 0 + 1 = 1

%e 0 + 1 + 2 = 3 (prime)

%e 0 + 1 + 2 + 1 = 4

%e 0 + 1 + 2 + 1 + 2 = 6

%e 0 + 1 + 2 + 1 + 2 + 3 = 9

%e 0 + 1 + 2 + 1 + 2 + 3 + 4 = 13 (prime)

%e 0 + 1 + 2 + 1 + 2 + 3 + 4 + 3 = 16

%t a[0] = 0; a[1] = 1; a[n_] := a[n] = 2*a[n - 1] - a[n - 2] - If[PrimeQ[a[n - 1]], 1, -1]; Array[a, 50, 0] (* _Amiram Eldar_, Jul 23 2022 *)

%o (Python)

%o import sympy

%o A355697 = A = [0,1]

%o for n in range(1,100):

%o if sympy.isprime(A355697[-1]):

%o y = A[-1] - A[-2] - 1

%o else:

%o y = A[-1] - A[-2] + 1

%o A.append(A[-1] + y)

%o (MATLAB)

%o function a = A355697(max_n)

%o a = 0; m = 0;

%o for n = 1:max_n

%o if isprime(a(n))

%o m = m - 1;

%o else

%o m = m + 1;

%o end

%o a(n+1) = a(n) + m;

%o end

%o end % _Thomas Scheuerle_, Jul 22 2022

%o (PARI) lista(nn) = my(va = vector(nn)); va[1] = 0; va[2] = 1; for (n=3, nn, if (isprime(va[n-1]), va[n] = 2*va[n-1]-va[n-2]-1, va[n] = 2*va[n-1]-va[n-2]+1);); va; \\ _Michel Marcus_, Aug 23 2022

%Y Cf. A000217, A104589, A116533, A332410, A356445.

%K nonn,easy

%O 0,3

%A _John Tyler Rascoe_, Jul 19 2022