Jump to content

Railway circuit: Difference between revisions

m
(→‎{{header|J}}: second draft)
Line 420:
crwc=: {{ {.\:~,/(i.#y)|."0 1/(,|.)y,:-y }}"1
 
NB. all valid railway circuits with y 30 degree curves
NB. generate somewhat limited set of possibilities
rwc=: {{
gen=: {{ _1^(-y){."1(#~ 0=2|+/"1) #:i.2^y-3 }}
r=: EMPTY
</lang>
h=: -:y
gen sfx=: {{ _1^(-y){]/."1(#~ 0=2|+/"1) #:i.2^y-3 }}h
for_pfx. (-h){."1 #:i.2^_3+h do. p=.2|+/pfx
r=: r,~.crwc (#~ vrwc) _1^pfx,"1 p{sfx
end.
~.r
}}</lang>
 
Task examples (partial extra credit):<lang J> 'SLR'{~~.crwc (#~ vrwc) genrwc 12
LLLLLLLLLLLL
'SLR'{~~.crwc (#~ vrwc) genrwc 16
LLLLLLLRLLLLLLLR
'SLR'{~~.crwc (#~ vrwc) genrwc 20
LLLLLLLLRRLLLLLLLLRR
LLLLLLLRLLRLLLLLLLRR
Line 435 ⟶ 442:
LLLLLRLLLRLLLLLRLLLR
LLLLRLLLLRLLLLRLLLLR
#'SLR'{~~.crwc (#~ vrwc) genrwc 24
40
#'SLR'{~~.crwc (#~ vrwc) genrwc 28
293</lang>
#'SLR'{~rwc 32
2793</lang>
 
=={{header|Java}}==
6,962

edits

Cookies help us deliver our services. By using our services, you agree to our use of cookies.