(no title)
hangsi | 1 year ago
For completeness, I wondered how many cards would be required to give the complete set of patterns.
If we number the positions in the 5x5 grid such that the top row has positions 1-5, the second row has 6-10 and so on, the grid positions can be converted to a sequence and we can use the permutation formula to find the number of arrangements. To account for rotations, we can divide the final value by 4 since every arrangement can be rotated and is therefore valid.
Of the 25 cards, there are 7 white, 8 red, 8 blue, 1 black and 1 double agent that can be red or blue, also deciding which team goes first. We can treat this final card as one of a kind, then double the formula output to account for cases where it is swapped to the other team.
Permutations of a multiset has a standard formula [0] that calculates a result from these values (rolling in the double agent factor of 2 and rotation division factor of 4):
25! / (7!8!8!1!1! * 2) = 946,551,177,000
(edit: as pointed out, this is 9 times too large as the double agent can indistinguishably replace each of the other 8 cards - a corrected value is 105,172,353,000)
This is (edit: still) more layout cards than have ever been printed across all production runs of Codenames, and would probably not fit into the current box size.
[0] https://en.wikipedia.org/wiki/Multinomial_theorem#Number_of_...
Sniffnoy|1 year ago
Note that this is only approximately correct, since some layouts will have nontrivial symmetries. (Edit: Actually no they won't due to parity reasons! Oops. So that step is exact after all.)
Edit: Actually, this isn't correct either, and in a more serious way:
> Of the 25 cards, there are 7 white, 8 red, 8 blue, 1 black and 1 double agent that can be red or blue, also deciding which team goes first. We can treat this final card as one of a kind, then double the formula output to account for cases where it is swapped to the other team.
On the layout cards, nothing distinguishes the double agent -- the double agent is purely a matter of representation, it's not part of the actual layout. So doing things this way will give you a number that's too large by a factor of about 8 or 9.
What you want to do here (ignoring rotations) is take 25!/(9!8!7!) to get the count with 9 red and 8 blue, then double it to include the count with 8 red and 9 blue, then divide by 4 to account for rotation (contrary to what I said earlier no need to account for symmetries because the numbers mean that none of the layouts can be rotationally symmetric), so you get a total of
25!/(9!8!7!2) = 105,172,353,000
So yeah about 9 times smaller than what you wrote. For what it's worth, anyway. :P
vitus|1 year ago
Can you elaborate? I think I can construct some boards that effectively have complete rotational symmetry.
For the purposes of the game, black can be thought of as another white card (since you will never reveal it in the middle of a round), and the double agent can be placed in the center. Then, you just need to place the remaining categories with rotational symmetry (e.g. red on the two main diagonals, and blue on the squares directly clockwise from those). So, for instance:
(w)hite and (d)ouble-agent are in lowercase; feel free to replace any single white square with blAck (Assassin).hangsi|1 year ago
This is great news for my proposed box redesign!