Skip to main content
added 151 characters in body
Source Link

Haskell, 2604525637 (= 222+25823268 + 25369) 26045 (= 222+25823)

r 0="VVX" r n=s(zip[1000,500,100,50,10,5]"MDCLXV")n ξ ξ='ξ' s[]q f |q<0=s[](5-q)f++r 0f++"V" |q<1="" |r<-q-1='I':s[]r f s ω@((v,a):l)q f |q>=v,f/=a=a:s ω(q-v)ξ |f==a,γ<-'I':a:s l(q-v+1)ξ,η γ<η(s l q ξ)=γ |f==ξ,γ<-s ω(v-q)a++[a],η γ<η(s l q ξ)=γ |True=s l q ξ η=length 

to be used as e.g.

GHCi> r 7 "VII" GHCi> r 39 "XIL" GHCi> r (-39) "ICXLC" -- "LLXILC" in my original version GHCi> r 1983 "MXVIIM" GHCi> r 259876 "MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMCXXIVM" 

You can evaluate the length sum with the straightforward

GHCi> sum . map(length.r) $ [-1000..3000] 2582325369 

Which takes butsomething in the order of a few secondsminute.

Haskell, 26045 (= 222+25823)

r 0="VVX" r n=s(zip[1000,500,100,50,10,5]"MDCLXV")n ξ ξ='ξ' s[]q f |q<0=s[](-q)f++r 0 |q<1="" |r<-q-1='I':s[]r f s ω@((v,a):l)q f |q>=v,f/=a=a:s ω(q-v)ξ |f==ξ,γ<-s ω(v-q)a++[a],η γ<η(s l q ξ)=γ |True=s l q ξ η=length 

to be used as e.g.

GHCi> r 7 "VII" GHCi> r 39 "XIL" GHCi> r (-39) "LLXILC" GHCi> r 1983 "MXVIIM" GHCi> r 259876 "MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMCXXIVM" 

You can evaluate the length sum with the straightforward

GHCi> sum . map(length.r) $ [-1000..3000] 25823 

Which takes but a few seconds.

Haskell, 25637 (= 268 + 25369) 26045 (= 222+25823)

r 0="VVX" r n=s(zip[1000,500,100,50,10,5]"MDCLXV")n ξ ξ='ξ' s[]q f |q<0=s[](5-q)f++"V" |q<1="" |r<-q-1='I':s[]r f s ω@((v,a):l)q f |q>=v,f/=a=a:s ω(q-v)ξ |f==a,γ<-'I':a:s l(q-v+1)ξ,η γ<η(s l q ξ)=γ |f==ξ,γ<-s ω(v-q)a++[a],η γ<η(s l q ξ)=γ |True=s l q ξ η=length 

to be used as e.g.

GHCi> r 7 "VII" GHCi> r 39 "XIL" GHCi> r (-39) "ICXLC" -- "LLXILC" in my original version GHCi> r 1983 "MXVIIM" GHCi> r 259876 "MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMCXXIVM" 

You can evaluate the length sum with the straightforward

GHCi> sum . map(length.r) $ [-1000..3000] 25369 

Which takes something in the order of a minute.

deleted 2 characters in body
Source Link

Haskell, 2604726045 (= 224+25823222+25823)

r 0="VVX" r n=s(zip[1000,500,100,50,10,5]"MDCLXV")n ξ ξ='ξ' s[]q f |q<0=s[](-q)f++r 0 |9*q<1=""|q<1="" |r<-q-1='I':s[]r f s ω@((v,a):l)q f |q>=v,f/=a=a:s ω(q-v)ξ |f==ξ,γ<-s ω(v-q)a++[a],η γ<η(s l q ξ)=γ |True=s l q ξ η=length 

to be used as e.g.

GHCi> r 7 "VII" GHCi> r 39 "XIL" GHCi> r (-39) "LLXILC" GHCi> r 1983 "MXVIIM" GHCi> r 259876 "MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMCXXIVM" 

You can evaluate the length sum with the straightforward

GHCi> sum . map(length.r) $ [-1000..3000] 25823 

Which takes but a few seconds.

Haskell, 26047 (= 224+25823)

r 0="VVX" r n=s(zip[1000,500,100,50,10,5]"MDCLXV")n ξ ξ='ξ' s[]q f |q<0=s[](-q)f++r 0 |9*q<1="" |r<-q-1='I':s[]r f s ω@((v,a):l)q f |q>=v,f/=a=a:s ω(q-v)ξ |f==ξ,γ<-s ω(v-q)a++[a],η γ<η(s l q ξ)=γ |True=s l q ξ η=length 

to be used as e.g.

GHCi> r 7 "VII" GHCi> r 39 "XIL" GHCi> r (-39) "LLXILC" GHCi> r 1983 "MXVIIM" GHCi> r 259876 "MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMCXXIVM" 

You can evaluate the length sum with the straightforward

GHCi> sum . map(length.r) $ [-1000..3000] 25823 

Which takes but a few seconds.

Haskell, 26045 (= 222+25823)

r 0="VVX" r n=s(zip[1000,500,100,50,10,5]"MDCLXV")n ξ ξ='ξ' s[]q f |q<0=s[](-q)f++r 0 |q<1="" |r<-q-1='I':s[]r f s ω@((v,a):l)q f |q>=v,f/=a=a:s ω(q-v)ξ |f==ξ,γ<-s ω(v-q)a++[a],η γ<η(s l q ξ)=γ |True=s l q ξ η=length 

to be used as e.g.

GHCi> r 7 "VII" GHCi> r 39 "XIL" GHCi> r (-39) "LLXILC" GHCi> r 1983 "MXVIIM" GHCi> r 259876 "MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMCXXIVM" 

You can evaluate the length sum with the straightforward

GHCi> sum . map(length.r) $ [-1000..3000] 25823 

Which takes but a few seconds.

Source Link

Haskell, 26047 (= 224+25823)

r 0="VVX" r n=s(zip[1000,500,100,50,10,5]"MDCLXV")n ξ ξ='ξ' s[]q f |q<0=s[](-q)f++r 0 |9*q<1="" |r<-q-1='I':s[]r f s ω@((v,a):l)q f |q>=v,f/=a=a:s ω(q-v)ξ |f==ξ,γ<-s ω(v-q)a++[a],η γ<η(s l q ξ)=γ |True=s l q ξ η=length 

to be used as e.g.

GHCi> r 7 "VII" GHCi> r 39 "XIL" GHCi> r (-39) "LLXILC" GHCi> r 1983 "MXVIIM" GHCi> r 259876 "MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMCXXIVM" 

You can evaluate the length sum with the straightforward

GHCi> sum . map(length.r) $ [-1000..3000] 25823 

Which takes but a few seconds.