|
|
A055120
|
|
Digital complement of n (replace each nonzero digit d with 10-d).
|
|
17
|
|
|
0, 9, 8, 7, 6, 5, 4, 3, 2, 1, 90, 99, 98, 97, 96, 95, 94, 93, 92, 91, 80, 89, 88, 87, 86, 85, 84, 83, 82, 81, 70, 79, 78, 77, 76, 75, 74, 73, 72, 71, 60, 69, 68, 67, 66, 65, 64, 63, 62, 61, 50, 59, 58, 57, 56, 55, 54, 53, 52, 51, 40, 49, 48, 47, 46, 45, 44, 43, 42, 41, 30, 39
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
0,2
|
|
COMMENTS
|
a(n) = -n in carryless arithmetic mod 10 - that is, n + a(n) = 0 (cf. A169894). - N. J. A. Sloane, Aug 03 2010
|
|
LINKS
|
|
|
FORMULA
|
a(10*n) = 10*a(n).
a(10*n+j) = 10*a(n) + 10 - j for 1 <= j <= 9.
G.f. g(x) satisfies g(x) = 10*(1+x+x^2+...+x^9)*g(x^10) + (9*x+8*x^2+7*x^3+6*x^4+5*x^5+4*x^6+3*x^7+2*x^8+x^9)/(1-x^10).
(End)
|
|
EXAMPLE
|
a(11) = 99 because 1 + 9 = 0 mod 10 for each digit.
a(20) = 80 because 2 + 8 = 0 mod 10 and 0 + 0 = 0 mod 10.
|
|
MAPLE
|
f:=proc(n) local t0, t1, i;
t0:=0; t1:=convert(n, base, 10);
for i from 1 to nops(t1) do
if t1[i]>0 then t0:=t0+(10-t1[i])*10^(i-1); fi;
od:
RETURN(t0);
end;
|
|
MATHEMATICA
|
a[n_] := FromDigits[ IntegerDigits[n] /. d_?Positive -> 10-d]; Table[a[n], {n, 0, 100}](* Jean-François Alcover, Nov 28 2011 *)
|
|
PROG
|
(Haskell)
a055120 = foldl f 0 . reverse . unfoldr g where
f v d = if d == 0 then 10 * v else 10 * v + 10 - d
g x = if x == 0 then Nothing else Just $ swap $ divMod x 10
(Python)
def A055120(n): return int(''.join(str(10-int(d)) if d != '0' else d for d in str(n))) # Chai Wah Wu, Apr 03 2021
|
|
CROSSREFS
|
|
|
KEYWORD
|
base,easy,nice,nonn
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|