Railway circuit: Difference between revisions

→‎{{header|J}}: fill out rest of examples
(→‎{{header|J}}: fill out rest of examples)
Line 422:
NB. all valid railway circuits with y 30 degree curves
rwc=: {{
r=:. EMPTY
h=:. -:y
sfx=:. (]/.~ 2|+/"1)#:i.2^h
for_pfx. (-h){."1 #:i.2^_3+h do. p=.2|+/pfx
r=:. r,~.crwc (#~ vrwc) _1^pfx,"1 p{sfx
end.
'SLR'{~~.r
}}
 
NB. all valid railway circuits with y 30 degree curves and x straight segments
rwcs=: {{
r=. EMPTY
h=. -:y+x
sfx=. (h#3)#:i.3^h
for_pfx. sfx do.
r=. r,~.crwc (#~ vrwc) (#~ x= 0 +/ .="1]) 0 1 _1{~pfx,"1 sfx
end.
'SLR'{~~.r
}}</lang>
 
Task examples (partial extra credit):<lang J> 'SLR'{~rwc 12
LLLLLLLLLLLL
'SLR'{~rwc 16
LLLLLLLRLLLLLLLR
'SLR'{~rwc 20
LLLLLLLLRRLLLLLLLLRR
LLLLLLLRLLRLLLLLLLRR
Line 442 ⟶ 453:
LLLLLRLLLRLLLLLRLLLR
LLLLRLLLLRLLLLRLLLLR
#'SLR'{~rwc 24
40
#'SLR'{~rwc 28
293
#'SLR'{~rwc 32
2793</lang>
4 rwcs 12
LLLLLLSSLLLLLLSS
LLLLLSLSLLLLLSLS
LLLLSLLSLLLLSLLS
LLLSLLLSLLLSLLLS</lang>
 
Symbols:
R: right (-1)
L: left ( 1)
S: straight ( 0)
 
=={{header|Java}}==
6,962

edits