login
Roman numerals written using 1 for I, 2 for V, 3 for X, 4 for L, 5 for C, 6 for D, 7 for M.
19

%I #58 Aug 25 2022 05:03:45

%S 1,11,111,12,2,21,211,2111,13,3,31,311,3111,312,32,321,3211,32111,313,

%T 33,331,3311,33111,3312,332,3321,33211,332111,3313,333,3331,33311,

%U 333111,33312,3332,33321,333211,3332111,33313,34,341,3411,34111,3412

%N Roman numerals written using 1 for I, 2 for V, 3 for X, 4 for L, 5 for C, 6 for D, 7 for M.

%C From _Daniel Forgues_, Jan 16 2015: (Start)

%C The Romans did not have 0 as a number, which is why there was no year zero (1 B.C. is followed by 1 A.D.).

%C The initial "N" (nulla, meaning "nothing") was used as a zero symbol in a table of Roman numerals by Bede or his colleague around 725. (End)

%C 3999 (MMMCMXCIX) is the largest decimal number that has a well-defined Roman numeral representation. Therefore the sequence deliberately stops there to avoid the ambiguous representations of larger numbers. - _Jamie Robert Creasey_, May 01 2021

%H Reinhard Zumkeller, <a href="/A061493/b061493.txt">Table of n, a(n) for n = 1..3999</a>

%H Gerard Schildberger, <a href="/A006968/a006968.txt">The first 3999 numbers in Roman numerals</a>

%H Eric Weisstein's World of Mathematics, <a href="http://mathworld.wolfram.com/RomanNumerals.html">Roman Numerals</a>

%H Wikipedia, <a href="http://en.wikipedia.org/wiki/Roman_numerals">Roman numerals</a>

%H Wikipedia, <a href="https://en.wikipedia.org/wiki/0#Classical_antiquity">0 (number) in classical antiquity</a>

%F a(n)=i <=> A003587(i)=n, for i in {1,...,7}, i.e., A061493 is a left inverse of A003587 on {1,...,7}. - _M. F. Hasler_, Jan 12 2015

%e a(14) = 312 because 14 = XIV in Roman, and I,V,X are coded as 1,2,3 respectively.

%e a(66)= 4321, LXVI is 50+10+5+1= 66, a(44)=3412, XLIV is -10+50-1+5= 44

%t Array[FromDigits[Characters@ RomanNumeral[#] /. {"I" -> 1, "V" -> 2, "X" -> 3, "L" -> 4, "C" -> 5, "D" -> 6, "M" -> 7}] &, 44] (* _Michael De Vlieger_, May 01 2021 *)

%o (Haskell)

%o a061493 n = read $ r 1 [] n :: Integer where

%o r _ roms 0 = roms

%o r p roms z = case p of

%o 1 -> r 2 (d '1' '2' '3' m) z'

%o 2 -> r 3 (d '3' '4' '5' m ++ roms) z'

%o 3 -> r 4 (d '5' '6' '7' m ++ roms) z'

%o 4 -> replicate z '7' ++ roms

%o where (z',m) = divMod z 10

%o d i j k c =

%o [[],[i],[i,i],[i,i,i],[i,j],[j],[j,i],[j,i,i],[j,i,i,i],[i,k]] !! c

%o -- _Reinhard Zumkeller_, Apr 14 2013

%o (PARI) {A061493(n,s="",c=[1000,7,900,57,500,6,400,56,100,5,90,35,50,4,40,34,10,3,9,13,5,2,4,12,1,1])= forstep(i=1,#c,2,while(n>=c[i],n-=c[i];s=Str(s,c[i+1])));eval(s)} \\ _M. F. Hasler_, Jan 11 2015

%o (Python)

%o def f(s, k):

%o return s[:2] if k==4 else (s[1]*(k>=5)+s[0]*(k%5) if k<9 else s[0]+s[2])

%o def a(n):

%o m, c, x, i = n//1000, (n%1000)//100, (n%100)//10, n%10

%o return int("7"*m + f("567", c) + f("345", x) + f("123", i))

%o print([a(n) for n in range(1, 45)]) # _Michael S. Branicky_, Aug 24 2022

%Y Cf. A006968, A002963, A003587, A036787, A057226.

%Y Cf. A036746, A036786, A036788, A160676, A160677, A199921.

%K easy,nonn,base

%O 1,2

%A _Frank Ellermann_, Jun 12 2001

%E 0 removed again by _Georg Fischer_, Jan 20 2019