41 lines
822 B
Text
41 lines
822 B
Text
func$ rep s$ n .
|
|
for i to n : r$ &= s$
|
|
return r$
|
|
.
|
|
func$[] genseq ones$[] nzeros .
|
|
if len ones$[] = 0
|
|
return [ rep "0" nzeros ]
|
|
.
|
|
for x = 1 to nzeros - len ones$[] + 1
|
|
skip1$[] = [ ]
|
|
for i = 2 to len ones$[]
|
|
skip1$[] &= ones$[i]
|
|
.
|
|
h$[] = genseq skip1$[] (nzeros - x)
|
|
for tail$ in h$[]
|
|
r$[] &= rep "0" x & ones$[1] & tail$
|
|
.
|
|
.
|
|
return r$[]
|
|
.
|
|
proc block data$ le .
|
|
a[] = number strchars data$
|
|
for b in a[] : nbytes += b
|
|
print "blocks " & a[] & " cells " & le
|
|
if le - nbytes <= 0
|
|
print "No solution"
|
|
return
|
|
.
|
|
for b in a[]
|
|
prep$[] &= rep "1" b
|
|
.
|
|
for r$ in genseq prep$[] (le - nbytes + 1)
|
|
print substr r$ 2 99999
|
|
.
|
|
print ""
|
|
.
|
|
block "21" 5
|
|
block "" 5
|
|
block "8" 10
|
|
block "2323" 15
|
|
block "23" 5
|