login
Sort the positive integers according to 3 keys, which are, in order of priority, number of digits, Omega (A001222), and the number itself.
2

%I #22 Feb 23 2018 23:11:21

%S 1,2,3,5,7,4,6,9,8,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,

%T 79,83,89,97,10,14,15,21,22,25,26,33,34,35,38,39,46,49,51,55,57,58,62,

%U 65,69,74,77,82,85,86,87,91,93,94,95,12,18,20,27,28,30,42,44

%N Sort the positive integers according to 3 keys, which are, in order of priority, number of digits, Omega (A001222), and the number itself.

%H Ivan Neretin, <a href="/A290020/b290020.txt">Table of n, a(n) for n = 1..9999</a>

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

%t Table[SortBy[Range[10^(n - 1), 10^n - 1], PrimeOmega], {n, 2}] // Flatten (* _Michael De Vlieger_, Jul 20 2017 *)

%o (PARI) upto(t10nm1) = {my(v, res = []); for(i=1, t10nm1, res = concat(res, vecsort(vector(9*10^(i-1), j, k=j+10^(i-1)-1;[bigomega(k),k]))));vector(#res, i, res[i][2])}

%o (PARI) mycmp(x, y) = my(dd = #digits(x) - #digits(y)); if (dd, sign(dd), sign(bigomega(x) - bigomega(y)));

%o lista(nn) = {v = vector(10^#Str(nn), k, k); w = vecsort(v, mycmp); vector(nn, k, w[k]);} \\ _Michel Marcus_, Jul 21 2017

%Y Cf. A001222, A055642, A290019.

%K nonn,base,easy

%O 1,2

%A _David A. Corneth_, Jul 19 2017

%E Definition clarified by _Giovanni Resta_, Jul 27 2017