This was one of the earlier definitions: alt=: 13 :'(-:(2 2$0 1 1 0)$~#)0 0 -.~|:y' alt [: (-: ((2 2$0 1 1 0) $~ #)) 0 0 -.~ |: It indicated that C failed:
]C=:2 5 $ 1 0 0 1 0 0 1 0 1 0 1 0 0 1 0 0 1 0 1 0 alt C 0 Linda -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Devon McCormick Sent: Monday, July 30, 2012 7:24 PM To: [email protected] Subject: Re: [Jprogramming] Determining an 'alternating' binary array You could implement this latter idea something like this: ok0;ok1=. 1|.ok0=. 1 0 ,: 0 1 +---+---+ |1 0|0 1| |0 1|1 0| +---+---+ (ok0;ok1) ([: *./ [: }: [: {. [: > [: +.&.>/ [ E.~&.>~ [: < 0 0 -.&.|:~ ]) C 0 ]Cok=:2 5 $ 1 0 0 1 0 0 1 0 0 1 1 0 0 1 0 0 1 0 0 1 (ok0;ok1) ([: *./ [: }: [: {. [: > [: +.&.>/ [ E.~&.>~ [: < 0 0 -.&.|:~ ]) Cok 1 On Mon, Jul 30, 2012 at 4:12 PM, Peter B. Kessler <[email protected]> wrote: ... > This doesn't address the case where both inputs have 1's in the same > column > > ]C=:2 5 $ 1 0 0 1 0 0 1 0 1 0 > > 1 0 0 1 0 > 0 1 0 1 0 > (>./-<./)+/\+/1 _1 *C > 1 > > The original statement of the problem doesn't say what to do with > simultaneous 1's, but I would think they fail the "alternating" description. > ... > Conversely, why is it not J-like to filter out the 0 0 columns (and > check for 1 1 columns while you are there), then match successive 2x2 > blocks to make sure they are all the same? Either "2 2 $ 0 1 1 0" or > "2 2 $ 1 0 0 1", -- Devon McCormick, CFA ^me^ at acm. org is my preferred e-mail ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
