Result

AC

Code [DL]

a={case[x],s->x
case[x,*y],s->x+s+a(y,s)}
f={n->{x->a(split(x,n)," "+n+" ")}}
stdin|f("0")|f("1")|f("2")|f("3")|f("4")|f("5")|f("6")|f("7")|f("8")|f("9")|{x->a(sort(split(x)),"")}|puts

stdin

2196399000745332362466088856867734495346033136945102704972788214974932632300815441767194067486953543

stdout

0000000000111111122222222333333333333334444444444444455555556666666666667777777777888888889999999999

stderr

strace