A363764 a(1)=1, and thereafter, a(n) is the number of terms in the sequence thus far that appear with a frequency not equal to that of a(n-1).
1, 0, 0, 1, 0, 2, 5, 5, 4, 7, 7, 5, 6, 10, 10, 9, 12, 12, 10, 10, 16, 16, 14, 18, 18, 15, 20, 20, 16, 20, 18, 16, 24, 26, 26, 27, 28, 28, 28, 24, 30, 33, 33, 31, 35, 35, 32, 37, 37, 33, 32, 35, 31, 37, 30, 39, 48, 48, 40, 50, 50, 41, 52, 52, 42, 54, 54, 43, 56, 56, 44, 58, 58
Offset: 1
Keywords
Examples
a(8)=5 occurs two times, so a(9) is the number of terms which do not occur two times, which is 4 (there are three 0s and one 2).
Links
- Neal Gersh Tolunsky, Table of n, a(n) for n = 1..10000
- Thomas Scheuerle, Scatterplot of a(n)/n for the first 100000 values. It is remarkable that we see extreme values a(n)/n > 0.99 for n = {1, 20957, 22061, 24915, ...}.
- Neal Gersh Tolunsky, Graph of first 500000 terms
Programs
-
MATLAB
function a = A363764( max_n ) s = zeros(1,max_n); a = 1; s(2) = 1; for n = 2:max_n a(n) = length(find(s(a+1)~=s(a(n-1)+1))); s(a(n)+1) = s(a(n)+1)+1; end end % Thomas Scheuerle, Jun 30 2023
-
Mathematica
a[1] = 1; a[n_] := a[n] = Total[Select[Tally[v = Array[a, n - 1]][[;; , 2]], # != Count[v, a[n - 1]] &]]; Array[a, 100] (* Amiram Eldar, Jun 30 2023 *)
-
Python
from itertools import count,islice from collections import defaultdict def A363764_gen(): x = 1 freq = defaultdict(int) freq[x] = f0 = 1 freqfreq = defaultdict(int) freqfreq[1] = 1 for n in count(1): yield x x = n-f0*freqfreq[f0] freq[x] = f0 = freq[x]+1 if f0 != 1: freqfreq[f0-1] -= 1 freqfreq[f0] += 1 def A363764_list(nmax): return list(islice(A363764_gen(), nmax)) # Pontus von Brömssen, Jul 01 2023 (after an idea by Kevin Ryde)
Comments