[AccessD] miracle required apparently
Paul Wolstenholme
Paul.W at industrialcontrol.co.nz
Tue Oct 17 18:10:06 CDT 2023
There is a similar problem at
https://www.rd.com/article/einsteins-riddle-solve-it/
I had a colleague who wrote code (probably in C or a derivative) that took
about a day to execute in 1999 and gave an answer.
I wrote an Access 95 query that took about a second to reveal the possible
variations that are encompassed in the ambiguities of the problem statement.
My technique was first to form a table of all the permutations (in this
case of 5 things, meaning 120 entries).
Next I formed a query for each thing that could lie in any of those
permutations.
Finally I formed a query that started as the cross product of each of those
queries but was linked according to the rules of the problem.
(After that I showed the final query's results in a form).
I expect my former colleague is still plotting his revenge.
Paul Wolstenholme
On Wed, 18 Oct 2023 at 08:14, Paul Hartland via AccessD <
accessd at databaseadvisors.com> wrote:
> I don't have much time until the weekend for knocking up a quick test, but
> think that scenario is pretty doable with 4 lots of times, 4 lots of
> classes, upto 8 participants and not being the same time or class zone more
> than once
>
> Paul
>
> On Tue, 17 Oct 2023, 02:22 Steve Schapel, <
> steve at datamanagementsolutions.biz>
> wrote:
>
> > Hi all
> >
> > I'm trying to do something that I initially thought would be reasonably
> > easy. But alas, so far success has eluded me. Any insights accepted
> > with much gratitude!
> >
> > The goal: Assign a number of Participants to a number of Activities
> > over a number of Sessions.
> >
> > Very simple example:
> > 4 Sessions
> > 4 Activities
> > 8 Participants (therefore 2 per Activity)
> >
> > To illustrate:
> > Let's say the sessions are 9am, 10am, 11am, 12pm.
> > Let's sat the activities are chess, tai chi, bowls, diving
> > Let's say the participants are A, B, C, D, E, F, G, H
> >
> > The stipulation is that each participant should do each activity one
> > time.
> >
> > By trial and error brute force, I know that there is at least one
> > solution, namely:
> >
> > chess tai chi bowls diving
> > 9am A & E C & F D & G B & H
> > 10am C & G A & H B & E D & F
> > 11am D & H B & G A & F C & E
> > 12pm B & F D & E C & H A & G
> >
> > HOWEVER, I have tried multiple angles of looping through nested (and
> > sometimes randomised) recordsets based on the core data elements
> > (sessions, activities, and participants), to write the assignments to
> > the available slots in a schedule table, and to my shock (and horror) we
> > always reach the point in the procedure where it gets stuck, due to
> > trying to assign a participant to two activities in the same session,
> > but with no valid alternative slot available.
> >
> > There is no problem if the model calls for the super simple option of
> > only one participant for each activity. But otherwise, no dice, so far.
> >
> > There MUST be a way to make this work? Surely?
> >
> > Thanks a lot.
> >
> > Regards
> > Steve
> > --
>
>
More information about the AccessD
mailing list