Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
25
Task/Straddling-checkerboard/J/straddling-checkerboard-1.j
Normal file
25
Task/Straddling-checkerboard/J/straddling-checkerboard-1.j
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
'Esc Stop'=: '/.'
|
||||
'Nums Alpha'=: '0123456789';'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
|
||||
Charset=: Nums,Alpha,Stop
|
||||
|
||||
escapenum=: (,@:((; Esc&,)&>) Nums) rplc~ ] NB. escape numbers
|
||||
unescapenum=: ((, ; ' '&,@])"1 0 Nums"_) rplc~ ] NB. unescape coded numbers (x is escape code, y is cipher)
|
||||
expandKeyatUV=: 0:`[`(1 #~ 2 + #@])} #inv ]
|
||||
makeChkBrd=: Nums , expandKeyatUV
|
||||
|
||||
chkbrd=: conjunction define
|
||||
'uv key'=. n
|
||||
board=. uv makeChkBrd key
|
||||
select. m
|
||||
case. 0 do. NB. encode
|
||||
digits=. board 10&#.inv@i. escapenum y
|
||||
' ' -.~ ,(":@{:"1 digits) ,.~ (1 1 0 2{":uv) {~ {."1 digits
|
||||
case. 1 do. NB. decode
|
||||
esc=. 0 chkbrd (uv;key) Esc NB. find code for Esc char
|
||||
tmp=. esc unescapenum esc,'0',y
|
||||
tmp=. ((":uv) ((-.@e.~ _1&|.) *. e.~) tmp) <;.1 tmp NB. box on chars from rows 0 2 3
|
||||
idx=. (}. ,~ (1 1 0 2{":uv) ":@i. {.) each tmp NB. recreate indices for rows 0 2 3
|
||||
idx=. ;(2&{. , [: ((0 1 $~ +:@#) #inv!.'1' ]) 2&}.) each idx NB. recreate indices for row 1
|
||||
}.board {~ _2 (_&".)\ idx
|
||||
end.
|
||||
)
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
preprocess=: (#~ Charset e.~ ])@toupper NB. verb to compress out non-alphanumerics
|
||||
chkbrdRC=: chkbrd (3 7;'HOLMESRTABCDFGIJKNPQUVWXYZ./') NB. define adverb by applying Rosetta Code key to chkbrd conjunction
|
||||
0 chkbrdRC preprocess 'One night-it was on the twentieth of March, 1888-I was returning'
|
||||
139539363509369743061399059745399365901344308320791798798798367430685972839363935
|
||||
1 chkbrdRC 0 chkbrdRC preprocess 'One night-it was on the twentieth of March, 1888-I was returning'
|
||||
ONENIGHTITWASONTHETWENTIETHOFMARCH1888IWASRETURNING
|
||||
|
|
@ -0,0 +1,3 @@
|
|||
preprocess=: Stop&([`([: I. Charset -.@e.~ ])`]} toupper) NB. replace all non-alphanumerics with Stop
|
||||
1 chkbrdRC 0 chkbrdRC preprocess 'One night-it was on the twentieth of March, 1888-I was returning'
|
||||
ONE.NIGHT.IT.WAS.ON.THE.TWENTIETH.OF.MARCH..1888.I.WAS.RETURNING
|
||||
17
Task/Straddling-checkerboard/J/straddling-checkerboard-4.j
Normal file
17
Task/Straddling-checkerboard/J/straddling-checkerboard-4.j
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
NB. stops setcode alphabet
|
||||
NB. creates verbs encode and decode which change between unencoded text and lists of encoded numbers
|
||||
setcode=: 3 :0
|
||||
2 6 setcode y
|
||||
:
|
||||
alphabet=: y, ,":"0 i.10
|
||||
stops=. x
|
||||
alphkeys=. (a: , ,&.> x) ([ -.~ [: , ,&.>/) i.10
|
||||
esckey=. >(alphabet i. '/'){alphkeys
|
||||
numkeys=. esckey&,&.> i.10
|
||||
keys=. alphkeys,numkeys
|
||||
|
||||
encode=: ([: ; keys {~ alphabet&i.) :. decode
|
||||
break=. </.~ i.@# - _1|. ([: >/\.&.|. e.&stops) + _1|.2*esckey&E.
|
||||
decode=: (alphabet {~ keys i. break f.) :. encode
|
||||
i.0 0
|
||||
)
|
||||
10
Task/Straddling-checkerboard/J/straddling-checkerboard-5.j
Normal file
10
Task/Straddling-checkerboard/J/straddling-checkerboard-5.j
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
3 7 setcode 'HOLMESRTABCDFGIJKNPQUVWXYZ./'
|
||||
preprocess=: (#~ alphabet e.~ ])@toupper
|
||||
,":"0 encode message=: preprocess 'One night-it was on the twentieth of March, 1888-I was returning'
|
||||
139539363509369743061399059745399365901344308320791798798798367430685972839363935
|
||||
decode encode message
|
||||
ONENIGHTITWASONTHETWENTIETHOFMARCH1888IWASRETURNING
|
||||
]s=. ((10|+) 0 4 5 2$~$)&.encode message NB. scramble by taking a modular sum with 0 4 5 2 while encoded
|
||||
OWVKRNEOAMTMXROWOHTMTMTROTQ4SEMRRLRZLVSTTLLOROMHALSFOHECMRWESWEE
|
||||
((10|-) 0 4 5 2$~$)&.encode s
|
||||
ONENIGHTITWASONTHETWENTIETHOFMARCH1888IWASRETURNING
|
||||
Loading…
Add table
Add a link
Reference in a new issue