Data update
This commit is contained in:
parent
61b93a2cd1
commit
5af6d93694
858 changed files with 20572 additions and 2082 deletions
|
|
@ -4,6 +4,3 @@ rle(a) := block(
|
|||
if cequal(c, charat(a, i)) then k: k + 1 else (b: sconcat(b, k, c), c: charat(a, i), k: 1),
|
||||
sconcat(b, k, c)
|
||||
)$
|
||||
|
||||
rle("WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWW");
|
||||
"12W1B12W3B24W1B14W"
|
||||
12
Task/Run-length-encoding/Maxima/run-length-encoding-2.maxima
Normal file
12
Task/Run-length-encoding/Maxima/run-length-encoding-2.maxima
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
/* Function to return a list where all but the last entries are integers */
|
||||
intbucket(lst):=block(bucket:[],while integerp(first(lst)) do (push(first(lst),bucket),lst:rest(lst)),lst:append(reverse(bucket),[first(lst)]));
|
||||
|
||||
/* Run-length decoding */
|
||||
rld(string_list):=block(
|
||||
coref:map(eval_string,charlist(string_list)),
|
||||
listcharact:sublist(coref,lambda([x],integerp(x)=false)),
|
||||
map(intbucket,append([coref],makelist(coref:rest(coref,length(intbucket(coref))),length(listcharact)-1))),
|
||||
makelist(sublist(%%[i],integerp),i,1,length(%%)),
|
||||
map(eval_string,makelist(apply(concat,%%[i]),i,1,length(%%))),
|
||||
makelist(smake(%%[i],string(listcharact[i])),i,1,length(listcharact)),
|
||||
apply(concat,%%));
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
rle("WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWW");
|
||||
"12W1B12W3B24W1B14W"
|
||||
rld(%);
|
||||
/* "WWWWWWWWWWWWBWWWWWWWWWWWWBBBWWWWWWWWWWWWWWWWWWWWWWWWBWWWWWWWWWWWWWW" */
|
||||
Loading…
Add table
Add a link
Reference in a new issue