I should better have controlled correctness:

   $@".&.> 'q #~ (8$15) -:"1 (+/"1 ,. +/"2)
q{0,2^i.4';'-.@(0&e.)@:(C.!.2)@(,|:)@:<:"2 q';'([: *./ [: (# = #@:~.)"1 (,
|:))"2 q';'q#~([:*./^:3[:~:"1(,:|:))"2 q'

+-----+----+----+-----+
|1 4 4|6912|6912|1 4 4|
+-----+----+----+-----+


R.E. Boss


> -----Oorspronkelijk bericht-----
> Van: [email protected] [mailto:programming-
> [email protected]] Namens Roger Hui
> Verzonden: dinsdag 5 oktober 2010 16:51
> Aan: Programming forum
> Onderwerp: Re: [Jprogramming] Distinct Numbers in Rows and Columns
> 
> Besides time and space, you need a new category:  beauty ;-)
> 
> 
> 
> ----- Original Message -----
> From: "R.E. Boss" <[email protected]>
> Date: Tuesday, October 5, 2010 5:13
> Subject: Re: [Jprogramming] Distinct Numbers in Rows and Columns
> To: 'Programming forum' <[email protected]>
> 
> > Relative performance:
> >
> >    ('Hui';'Rich';'Murray';'Boss') rank 'q #~ (8$15) -
> > :"1 (+/"1 ,. +/"2)
> > q{0,2^i.4';'-.@(0&e.)@:(C.!.2)@(,|:)@:<:"2 q';'([: *./ [: (#
> > = #@:~.)"1 (,
> > |:))"2 q';'q#~([:*./^:3[:~:"1(,:|:))"2 q'
> >
> > +----------+----+-----+-----+------+
> > |expression|rank|tm*sz|time |size  |
> > +----------+----+-----+-----+------+
> > |Hui       | 3  |17.44|
> > 1.00|135.87|+----------+----+-----+-----+------+
> > |Rich      | 0  | 1.00|
> > 7.60|  1.02|
> > +----------+----+-----+-----+------+
> > |Murray    | 2  | 3.45|26.85|  1.00|
> > +----------+----+-----+-----+------+
> > |Boss      | 1  |
> > 1.44|10.55|  1.07|
> > +----------+----+-----+-----+------+
> >
> >
> > R.E. Boss
> >
> >
> > > -----Oorspronkelijk bericht-----
> > > Van: [email protected] [mailto:programming-
> > > [email protected]] Namens R.E. Boss
> > > Verzonden: dinsdag 5 oktober 2010 11:44
> > > Aan: 'Programming forum'
> > > Onderwerp: Re: [Jprogramming] Distinct Numbers in Rows and Columns
> > >
> > >
> > >    q #~ ([:*./^:3 [:~:"1 (,: |:))"2 q
> > > 1 2 4 3
> > > 4 3 2 1
> > > 2 1 3 4
> > > 3 4 1 2
> > >
> > >    ts'q#~([:*./^:3[:~:"1(,:|:))"2 q'
> > > 0.030079443 12352
> > >    ts'q #~ (8$15) -:"1 (+/"1 ,. +/"2) q{0,2^i.4'
> > > 0.0026829032 2100864
> > >
> > > Slower but leaner:
> > >
> > >    rank 'q #~ (8$15) -:"1 (+/"1 ,. +/"2) q{0,2^i.4';
> > > 'q#~([:*./^:3[:~:"1(,:|:))"2 q'
> > > +----+-----+-----+------+
> > > |rank|tm*sz|time |size  |
> > > +----+-----+-----+------+
> > > | 1  |15.85| 1.00|170.08|
> > > +----+-----+-----+------+
> > > | 0  | 1.00|10.73|  1.00|
> > > +----+-----+-----+------+
> > >
> > >
> > > R.E. Boss
> > >
> > >
> > > > -----Oorspronkelijk bericht-----
> > > > Van: [email protected] [mailto:programming-
> > > > [email protected]] Namens Roger Hui
> > > > Verzonden: dinsdag 5 oktober 2010 1:37
> > > > Aan: Programming forum
> > > > Onderwerp: Re: [Jprogramming] Distinct Numbers in Rows and Columns
> > > >
> > > > Great minds think alike, eh?  (But I think you
> > > > need to test your expressions ;-)  Go to
> > > > http://www.jsoftware.com/jwiki/Essays/KenKen
> > > > and look about a third of the way down,
> > > >
> > > > q #~ (8$15) -:"1 (+/"1 ,. +/"2) q{0,2^i.4
> > > >
> > > > The initial effort in your previous msg is also
> > > > similar to my initial effort.
> > > >
> > > >
> > > >
> > > > ----- Original Message -----
> > > > From: Marshall Lochbaum <[email protected]>
> > > > Date: Monday, October 4, 2010 16:28
> > > > Subject: Re: [Jprogramming] Distinct Numbers in Rows and Columns
> > > > To: 'Programming forum' <[email protected]>
> > > >
> > > > > Here's a funny--and much faster--one:
> > > > > p=.p:i.n
> > > > > *./"1 (*/p) = (*/"2 ,. */"1) q{p
> > > > >
> > > > > Actually, I suppose it is better to do it with addition, so
> > > > > p=.2^i.n
> > > > > *./"1 (+/p) = (+/"2 ,. +/"1) q{p
> > > > >
> > > > > Marshall
> > > > >
> > > > > -----Original Message-----
> > > > > From: [email protected]
> > > > > [mailto:[email protected]] On Behalf Of
> > Roger Hui
> > > > > Sent: Monday, October 04, 2010 6:41 PM
> > > > > To: Programming forum
> > > > > Subject: [Jprogramming] Distinct Numbers in Rows and Columns
> > > > >
> > > > > An interesting puzzle arising from the KenKen solver:
> > > > > q is an array with shape (m,n,n) and  (,q) e. 1+i.n .
> > > > > Which items of q have 1+i.n in each row and in each column?
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to