# Calculate pairing in a rotational system

I'm not even sure how to word this question. So I'll explain it out.

I've got these values:

A1, A2, B1, B2, B3, C1, C2,

I need

• each A to be paired with each B and C
• each B with each A and C
• each C with each A and B

but they can only be paired with one other letter at a time (i.e. in one day).

Each permutation is exclusive, meaning when A1 is paired with B1. A2 could be paired with B2 or B3 or C1 or C2 but not A1.

But as many as possible need to be paired at the same time.

If I put that into the real world each number could represent a person and the letters represent a skill. On a Monday I want two people with each skill to work with each other and as many people as possible to be working together. In a rotational system every day until the first two people are pairing again.

So hopefully I could come up with some table that would show who is working with who when.

Mon | Tues | ..

A1B1 | A1B2 |
A2B2 | C1A2 |

Is this possible, what is the name of the type of algorithm this is formed from?

Also what is the answer :-)

-
This is a kind of experimental design problem; you might have luck looking at the literature for this subject. Sadly, your problem is not exactly pairwise coverage, for which good tools and algorithms exist. – Johannes Kloos Mar 15 '12 at 16:20
Do you mean I'd need one less B for pairwise coverage? – Blundell Mar 15 '12 at 16:55
Actually, pairwise coverage would mean that you want tuples A_i B_j C_k. – Johannes Kloos Mar 15 '12 at 17:36