OFFSET
0,2
COMMENTS
From Avik Roy (avik_3.1416(AT)yahoo.co.in), Feb 02 2009: (Start)
Any (k+1)-digit number m can be represented as
m = Sum_{i=0..k} (ai*10^i).
Reverse(m) = Sum_{i=0..k} (ai*10^(k-i)).
m+Reverse(m) = Sum_{i=0..k} (ai*(10^i+10^(k-i))).
The last formula can produce all the terms of this sequence; the order of terms is explicitly determined by the order of ai's (repetition of terms might not be avoided). (End)
LINKS
EXAMPLE
0 belongs to the sequence since 0 + 0 = 0;
33 belongs to the sequence since 12 + 21 = 33.
MATHEMATICA
M = 10^3; digrev[n_] := IntegerDigits[n] // Reverse // FromDigits; Clear[b]; b[_] = 0; For[n = 1, n <= M, n++, t1 = n + digrev[n]; If[t1 <= M, b[t1] = b[t1] + 1]]; A067030 = Join[{0}, Reap[For[n = 1, n <= M, n++, If[b[n] >= 1, Sow[n]]]][[2, 1]]] (* Jean-François Alcover, Oct 01 2016, after N. J. A. Sloane's Maple code in A072040 *)
max = 1000; l = ConstantArray[0, max]; Do[s = n + IntegerReverse@n; If[s <= max, l[[s]]++], {n, max}]; Flatten@{0, Position[l, _?(# != 0 &)]} (* Hans Rudolf Widmer, Dec 25 2022 *)
PROG
(ARIBAS)
function Reverse(n: integer): integer; var i: integer; str, rev: string;
begin str := itoa(n); rev := "";
for i := 0 to length(str)-1 do rev := concat(str[i], rev); end;
return atoi(rev); end Reverse;
function A067030(a, b: integer); var k, n: integer;
begin for n := a to b do k := 0; while k <= n do
if n = k+Reverse(k) then write(n, ", "); break; else inc(k); end;
end; end; end A067030;
A067030(0, 500) (* revised by Klaus Brockhaus, May 04 2011 *).
(Magma) A067030:=function(a, b); S:=[]; for n in [a..b] do k:=0; while k le n do if n eq k+Seqint(Reverse(Intseq(k))) then Append(~S, n); break; else k+:=1; end if; end while; end for; return S; end function; A067030(0, 500); // Klaus Brockhaus, May 04 2011
(Python)
def aupto(lim): return sorted(set(t for t in (k + int(str(k)[::-1]) for k in range(lim+1)) if t <= lim))
print(aupto(443)) # Michael S. Branicky, Dec 25 2022
CROSSREFS
KEYWORD
base,easy,nonn
AUTHOR
Klaus Brockhaus, Dec 29 2001
STATUS
approved