login
a(n) = A357378(floor(n/2)) * A357378(n).
3

%I #16 Sep 29 2022 03:25:44

%S 1,2,4,6,8,10,3,9,12,16,5,15,7,11,18,21,24,27,20,28,13,14,30,33,35,42,

%T 22,44,36,48,49,56,32,40,45,54,25,50,63,70,26,39,84,98,60,80,55,66,65,

%U 75,72,78,34,38,52,64,90,96,88,104,77,91,112,120,68,76,85

%N a(n) = A357378(floor(n/2)) * A357378(n).

%C This sequence is a bijection from the nonnegative integers to the positive integers with inverse A357396 (see comments in A357378).

%H Rémy Sigrist, <a href="/A357379/b357379.txt">Table of n, a(n) for n = 0..10000</a>

%H Rémy Sigrist, <a href="/A357379/a357379.png">Density plot of the first 10000000 terms</a>

%H Rémy Sigrist, <a href="/A357379/a357379.txt">C program</a>

%H <a href="/index/Per#IntegerPermutation">Index entries for sequences that are permutations of the natural numbers</a>

%e a(5) = A357378(floor(5/2)) * A357378(5) = A357378(2) * A357378(5) = 2 * 5 = 10.

%o (C) See Links section.

%o (Python)

%o from itertools import count, islice

%o def agen(): # generator of terms

%o alst, disallowed = [1], {1}; yield 1

%o for n in count(1):

%o ahalf, k = alst[n//2], 1

%o while ahalf*k in disallowed: k += 1

%o an = k; yield ahalf*an; alst.append(an); disallowed.add(ahalf*an)

%o print(list(islice(agen(), 67))) # _Michael S. Branicky_, Sep 26 2022

%Y Cf. A357378, A357396 (inverse).

%K nonn

%O 0,2

%A _Rémy Sigrist_, Sep 26 2022