Ok... so... this is correct behavior? Foo 1 10 1 # 1 2 1 +---------------------+---------------------+ |1 2 2 2 2 2 2 2 2 2 2|2 2 2 2 2 2 2 2 2 2 1| +---------------------+---------------------+
Thanks, -- Raul On Fri, May 21, 2021 at 4:09 AM R.E. Boss <r.e.b...@outlook.com> wrote: > > ud 2#1 2 1 2 1 > +-------+-----+-----+-----+ > |1 1 2 2|2 1 1|1 2 2|2 1 1| > +-------+-----+-----+-----+ > Foo 2#1 2 1 2 1 > +-------+-------+-------+-------+ > |1 1 2 2|2 2 1 1|1 1 2 2|2 2 1 1| > +-------+-------+-------+-------+ > > the latter being the required, maximal length ups & downs. > > OTOH, Foo does not handle correct your first two values 4#1 and 3#1 2. > But they are rather trivial ones, being constant or only one up (or down), I > can live with that. An easy check could filter that out. > > > R.E. Boss > > > -----Original Message----- > From: Programming <programming-boun...@forums.jsoftware.com> On Behalf Of > Raul Miller > Sent: vrijdag 21 mei 2021 00:32 > To: Programming forum <programm...@jsoftware.com> > Subject: Re: [Jprogramming] ups & downs > > Bugfix: > > reps=: 1+0,~0,2~:/\[:[^:(0~:[)/\.&|.^:2@:*2 -/\] > ud=: reps ((1,2 =/\ [ # #\@]) <;.1 #) ] > > This fixes a problem where the duplicate values appeared at the end of the > sequence. > > Here are some values to test against: > 4#1 > 3#1 2 > 2#1 2 1 2 1 > > I think I've dealt with all of these correctly (though of course, there's > some ambiguity where a run of equal values appears at the edge of an up/down > border). But let me know if I should be doing this differently. > > Thanks, > > -- > Raul > > On Thu, May 20, 2021 at 12:17 PM Raul Miller <rauldmil...@gmail.com> wrote: > > > > Oh... I see... > > > > I noticed that the ravel of the boxes did not match the original > > sequence and did not look close enough after that. > > > > Anyways, I guess here's how I would approach this: > > > > reps=: 1+0,~0,2~:/\[:[^:(0~:[)/\.@:*2 -/\] > > ud=: reps ((1,2 =/\ [ # #\@]) <;.1 #) ] > > > > Thanks, > > > > -- > > Raul > > > > On Thu, May 20, 2021 at 10:42 AM R.E. Boss <r.e.b...@outlook.com> wrote: > > > > > > I thought it was clear from the output (therefore I used ?. in the > > > testcases) that the order of the input array should not be altered. > > > That was the constraint you were missing. > > > > > > > > > R.E. Boss > > > > > > > > > -----Original Message----- > > > From: Programming <programming-boun...@forums.jsoftware.com> On > > > Behalf Of Raul Miller > > > Sent: donderdag 20 mei 2021 16:33 > > > To: Programming forum <programm...@jsoftware.com> > > > Subject: Re: [Jprogramming] ups & downs > > > > > > I could use some additional details. > > > > > > I mean... it seems to me that Foo=:<@/:~ would minimally satisfy the > > > requirements which have been stated so far. > > > > > > But, presumably, there's some kind of "cost function" which we are trying > > > to minimize, and presumably that has something to do with how pairs are > > > handled? > > > > > > Or, perhaps, you have a constraint that no more than three of any given > > > number may appear in any box, and I think I see a constraint that > > > adjacent boxes must alternate their order. But perhaps there are also > > > similar additional metrics or constraints? > > > > > > Thanks, > > > > > > -- > > > Raul > > > > > > On Thu, May 20, 2021 at 6:43 AM R.E. Boss <r.e.b...@outlook.com> wrote: > > > > > > > > Given an array of numbers, like > > > > > > > > ?.@#~20 > > > > 14 16 8 6 5 8 6 16 16 19 13 12 3 1 9 12 17 0 9 5 > > > > > > > > there is always a sequence of (non-strict) ups & downs, like > > > > > > > > 14 16;16 8 6 5;5 8;8 6;6 16 16 19;19 13 12 3 1; 1 9 12 17;17 > > > > 0;0 > > > > 9;9 5 > > > > +-----+--------+---+---+----------+------------+---------+----+---+---+ > > > > |14 16|16 8 6 5|5 8|8 6|6 16 16 19|19 13 12 3 1|1 9 12 17|17 0|0 > > > > |9|9 > > > > |5| > > > > +-----+--------+---+---+----------+------------+---------+----+---+---+ > > > > > > > > Well, this is the way I prefer to have the ups & downs, where they > > > > share their border terms. > > > > Which verb makes this transformation? > > > > Elegance, as always, is appreciated, correctness is a must, efficiency > > > > a blessing. > > > > > > > > Some testcases: > > > > > > > > Foo ?.@#~25 > > > > +----+---+---+-------+-----+-----+----+---+---+----+-------+----+----+-------+----+----+----+----+------+---+ > > > > |19 6|6 8|8 6|6 10 23|23 16|16 21|21 1|1 9|9 8|8 22|22 13 1|1 > > > > |14|14 > > > > |2|2 17 20|20 9|9 15|15 7|7 22|22 4 2|2 9| > > > > +----+---+---+-------+-----+-----+----+---+---+----+-------+----+----+-------+----+----+----+----+------+---+ > > > > Foo ?.@#~30 > > > > +--------+------+----+--------+--------+---------+----+-----+-----+----+----+-----+-----+----+-------+-------+-------+--------+-----+-----+ > > > > |24 26 28|28 6 5|5 28|28 16 16|16 16 26|26 19 3 2|2 13|13 11|11 > > > > |19|19 > > > > |2|2 27|27 10|10 19|19 5|5 17 27|27 19 7|7 24 28|28 27 14|14 22|22 > > > > |2|21| > > > > +--------+------+----+--------+--------+---------+----+-----+-----+----+----+-----+-----+----+-------+-------+-------+--------+-----+-----+ > > > > > > > > > > > > R.E. Boss > > > > ------------------------------------------------------------------ > > > > ---- For information about J forums see > > > > http://www.jsoftware.com/forums.htm > > > -------------------------------------------------------------------- > > > -- For information about J forums see > > > http://www.jsoftware.com/forums.htm > > > -------------------------------------------------------------------- > > > -- For information about J forums see > > > http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm