On Nov 6, 2007 1:41 AM, David Vincent-Jones <[EMAIL PROTECTED]> wrote:
> dat=:0 7 8 8 8 9 2 2 5 5 5 3 8 8 8 0 0 5 5 9 6 8 8 8 8 4 0 6 4
Here is my variant:
p2=: ( ( #~[: (1&,*.,&1) 2&(_1:>-/\) ) @: I. @: E.~$/ )~
2 5 p2 dat
17
3 8 p2 dat
2 12
Longer than Raul's ( pattern=: (1 #~ [EMAIL PROTECTED]) [EMAIL PROTECTED]&(0 ,
0 ,~ ]) ] e.
{:@[ ) but 2 times faster:
in=:? 1e6$10
6!:2 '2 5 pattern in'
0.0485037
6!:2 '2 5 p2 in'
0.0241198
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm