How to rotate n individuals at a dinner party so that every guest meets every other guests I'm throwing an event where every individual is suppose to meet every other individual so I'm trying figure out how to rotate them.  My friends say its easy but they have yet to come up with an answer and our event looms closer and closer.
We are shooting for n = 20 but my gut says n has to be a power of 2 for this to work.  The first half is easy, you just have the odds stay in their seats and rotate evens.  Then take the 10 odds, renumber them, repeat.  Then split to 5... oops.  you've got an odd number.  but thats ok, you've got 4 groups with 5 each so create 2 pairs and you've got 5 sets of 2 pairs.
At this point, my head hurts and it's taking more time to tell my guests who to meet than they spend meeting them.
Is there a simpler answer for n=20?
(edit: lots of questions about the table setup and who they are suppose to meet.  Assume whatever table arrangement works, we have a variety.  Regardless, i think the long narrow solution below works.)
 A: I think the answer is:
Make one person stationary, rotate all the folks. This actually works.  
Example with N=6. 1 is stationary. (Each person in the top row "meets" the corresponding person just below in the bottom row.)
1) (#1:4) (#2:5) (#3:6) (#4:1) (#5:2) (#6:3)
1 2 3
4 5 6

2) (#1:4,5) (#2:5,3) (#3:6,2) (#4:1,6) (#5:2,1) (#6:3,4)
1 4 2
5 6 3

3) (#1:4,5,6) (#2:5,3,4) (#3:6,2,5) (#4:1,6,2) (#5:2,1,3) (#6:3,4,1) 
1 5 4
6 3 2

4) (#1:4,5,6,3) (#2:5,3,4,6) (#3:6,2,5,1) (4:1,6,2,5) (5:2,1,3,4) (6:3,4,1,2)
1 6 5
3 2 4

5) (#1: 4,5,6,3,2) (#2:5,3,4,6,1) (#3:6,2,5,1,4) (4:1,6,2,5,3) (5:2,1,3,4,6) (6:3,4,1,2,5)
1 3 6
2 4 5

A: For sixteen people, sort them into four groups of four: A,B,C,D.  Then seat them at two tables of eight:
ABAB CDCD
ABAB CDCD
then
ACAC BDBD
ACAC BDBD
then
ADAD BCBC
ADAD BCBC
Rotate the people within A, and those within B, etc, so they meet everyone within their own group.
Then, counting neighbours as next-to, opposite, and opposite's next-to, some people can meet all 15 others, but everyone else meets only 11 others.
-- 
For twelve people, number the chairs 1 to 6 on one side of the table, and 7 to 12 on the other side, so 1 faces 7, 2 faces 8 and so on.  Everyone moves from seat $n$ to seat $3n (\mod 13)$ after each course.
ABCDEF
GHIJKL
then
IEAJFB
KGCLHD
then
CFILBE
HKADGJ
In this arrangement, everyone meets everyone else (next-to, opposite or opposite's next-to) except for BK, EH and FG.
A: To extend on Jesse Phillips's awesome answer: In case you have an odd number of participants you have to adjust his strategy by not fixing anybody, so every participant/handshaker will move one position further. Of course one participant will always have to wait; so you can imagine that there's a table with just one chair.
Here's an illustration for n=13 participants:

O, and in case anybody is interested in the number of rounds depending on the number of participants:
The number of pairs is (n over 2), i.e., the number of 2-sized sets picked from an n-sized set. This is equivalent to n*(n-1)/2. To get to the rounds we still need to divide this by the number of tables, which is floor(n/2), i.e., half of the participants, but "down-rounded". Thus, the number of rounds is:

*

*n-1, if n is even

*n, if n is odd

