MathGroup Archive 2009

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Ten chess-players...

  • To: mathgroup at smc.vnet.net
  • Subject: [mg104241] Re: Ten chess-players...
  • From: ADL <alberto.dilullo at tiscali.it>
  • Date: Sun, 25 Oct 2009 01:04:21 -0400 (EDT)
  • References: <hbu7nh$7g2$1@smc.vnet.net>

This is what I would do:

nPlayers = 10;
pairs =
  DeleteCases[
    Flatten[Table[
      If[i < j, {i, j}, Null], {i, nPlayers}, {j, nPlayers}], 1],
    Null
  ];
fact =
  MapThread[
    Power, Transpose@FactorInteger[Length[pairs]]
  ];
Partition[pairs, Max@Nearest[fact, 5]]

This fills a rectangular table in which the number of matches per day
is chosen closest to 5 as a function of the total number of pairs. As
far as I see, it works for any integer.

ADL


On Oct 24, 8:44 am, cmp... at gmail.com wrote:
> Given 10 (1 to 10) chess-players, in one day they play 5 games (1-2,
> 6-10, 5-7, 4-8, 3-9).
> Then they need 8 more days to complete the championship (one gamer
> must play one time against any other player):
> 1-3, 2-10, 6-7, 5-8, 4-9
> 1-4, 2-3, 7-10, 6-8, 5-9
> 1-5, 2-4, 3-10, 7-8, 6-9
> 1-6, 2-5, 3-4, 7-9, 8-10
> 1-7, 2-6, 3-5, 4-10, 8-9
> 1-8, 2-7, 3-6, 4-5, 9-10
> 1-9, 2-8, 3-7, 4-6, 5-10
> 1-10, 2-9, 3-8, 4-7, 5-6
>
> How can I get the 10*(10-1)/2 = 45 pairs distributed in the 9x5
> matrix?
> What's about any other even number of players?
>
> Bruno



  • Prev by Date: Re: Using Mathematica 5.2 and 7.01 with separate settings
  • Next by Date: Re: How create vertical line using Plot?
  • Previous by thread: Ten chess-players...
  • Next by thread: Re: Ten chess-players...