|
|
A320485
|
|
Keep just the digits of n that appear exactly once; write -1 if all digits disappear.
|
|
12
|
|
|
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, -1, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, -1, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, -1, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, -1, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, -1, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, -1, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, -1, 1, 0, 102, 103, 104, 105, 106, 107, 108, 109, 0, -1, 2, 3, 4, 5, 6, 7, 8, 9, 120, 2, 1, 123, 124, 125, 126, 127, 128, 129, 130, 3
(list;
graph;
refs;
listen;
history;
text;
internal format)
|
|
|
OFFSET
|
0,3
|
|
COMMENTS
|
Digits that appear more than once in n are erased. Leading zeros are erased unless the result is 0. If all digits are erased, we write -1 for the result.
The map n -> a(n) was invented by Eric Angelini and described in a posting to the Sequence Fans Mailing List on Oct 24 2018.
More than the usual number of terms are shown in order to reach some interesting examples.
|
|
REFERENCES
|
Eric Angelini, Posting to Sequence Fans Mailing List, Oct 24 2018
|
|
LINKS
|
N. J. A. Sloane, Coordination Sequences, Planing Numbers, and Other Recent Sequences (II), Experimental Mathematics Seminar, Rutgers University, Jan 31 2019, Part I, Part 2, Slides. (Mentions this sequence)
|
|
FORMULA
|
a(n) <= 9876543210 with equality iff n = 9876543210.
(End)
If n > 9876543210, then a(n) < n. If a(n) < n, then a(n) <= 99n/1000. - Chai Wah Wu, Oct 24 2018
|
|
EXAMPLE
|
1231 becomes 23, 1123 becomes 23, 11231 becomes 23, and 11023 becomes 23 (as we don't accept leading zeros). Note that 112323 disappears immediately and we get -1.
101 and 110 become 0 while 11000 and 10001 become -1.
|
|
MAPLE
|
f:= proc(n) local F, S;
F:= convert(n, base, 10);
S:= select(t -> numboccur(t, F)>1, [$0..9]);
if S = {} then return n fi;
F:= subs(seq(s=NULL, s=S), F);
if F = [] then -1
else add(F[i]*10^(i-1), i=1..nops(F))
fi
end proc:
|
|
MATHEMATICA
|
Array[If[# == {}, -1, FromDigits@ #] &@ Map[If[#[[-1]] > 1, -1, #[[1]] ] /. -1 -> Nothing &, Tally@ IntegerDigits[#]] &, 131] (* Michael De Vlieger, Oct 24 2018 *)
|
|
PROG
|
(PARI) a(n) = {my(d=digits(n), v = vector(10), res = 0, t = 0); for(i=1, #d, v[d[i]+1]++); for(i=1, #d, if(v[d[i]+1]==1, t = 1; res=10 * res + d[i])); res - !t + !n} \\ David A. Corneth, Oct 24 2018
(Python)
return (lambda x: int(x) if x != '' else -1)(''.join(d if str(n).count(d) == 1 else '' for d in str(n))) # Chai Wah Wu, Nov 19 2018
|
|
CROSSREFS
|
|
|
KEYWORD
|
|
|
AUTHOR
|
|
|
STATUS
|
approved
|
|
|
|