Three Polygons


Three regular polygons, all with unit sides, share a common vertex. Each polygon has a different number of sides, and each polygon shares a side with the other two; there are no gaps or overlaps. Find the number of sides for each polygon.

There are multiple answers. Can you find them all? Can you find a set of polygons that meet the above criteria if there are more than three polygons?

Source: Original.


Solution: Several people found all six possible solutions:
The possible number of sides for the polygons are:
  # of Sides 
-------------
  3   7  42 
  3   8  24
  3   9  18
  3  10  15
  4   5  20
  4   6  12
The problem cannot be solved with any other number of polygons.

Solvers include: Bill Chapp, Wilfred Theunissen and Evert Offereins, Ken H. Burres III.
Each of the solutions I received also included the method of solution. Since they were all somewhat unique, I decided to include them for your enjoyment.


From: Bill Chapp (chapp@rosemail.rose.hp.com)

The angle at a vertex of an n-sided regular polygon is 180*(n-2)/n.  In
the puzzle the sum of the angles for three different values of n must be
360 degrees.  Since the angle is never greater than 180 degrees for any
n, we can set limits on the possible values as follows:

Any two angles must sum to greater than 180 degrees.  Starting from a
triangle and working to more sides, we see that 3 and 7 sides give
smallest two angles summing to greater than 180 degrees
(60+128.571=188.571).  (The next higher possibility is 4 and 5, which
gives 198 degrees).  Thus, the third side angle must be less than
360-188.571=171.429.  Solving for the largest n which has angle <=
171.429 gives 42.

Therefore, we need to search only in the range from 3 sides to 42 sides.
The attached program gives the six answers:

  # of Sides | Angles of respective sides
------------------------------------------
  3   7  42  |  60.000 128.571 171.429
  3   8  24  |  60.000 135.000 165.000
  3   9  18  |  60.000 140.000 160.000
  3  10  15  |  60.000 144.000 156.000
  4   5  20  |  90.000 108.000 162.000
  4   6  12  |  90.000 120.000 150.000

To solve for the greater than three polygon case, we'll start with four.
For that case, any three angles must sum to greater than 180 degrees.
The smallest three polygons, 3, 4, and 5 sides total 258 degrees.
Therefore, for any four polygons, the fourth one must have an angle <=
360-258=102 degrees.  However, only 3 and 4 sided polygons have angles
less than 102, and those polygons have already been used.

Therefore, there is no solution using greater than three polygons.

[ text/plain ] :

#!/usr/bin/awk -f

BEGIN {
  maxsides=42;
  for(n=3;n<=maxsides;n++)
    angle[n]=180*(n-2)/n;
  for(i=3;i<=maxsides;i++)
    for(j=i+1;j<=maxsides;j++)
      for(k=j+1;k<=maxsides;k++)
          if(angle[i]+angle[j]+angle[k]==360)
          printf("%3d %3d %3d %7.3f %7.3f %7.3f\n",
                 i,j,k,angle[i],angle[j],angle[k]);
}

From: Wilfred Theunissen and Evert Offereins
(theuniw@unix2ccm.apd.dec.com, offeree@unix2ccm.apd.dec.com)

There are just 6 solutions what can be proven.

We first set up a formula for the angle of a regular polygon. 
This formula is for a regular n-polygon:

(1)     (n - 2)*180 / n.

Second, we came up with a formula for the common vertex using formula (1) three 
times:

        (n1 - 2)*180 / n1 + (n2 - 2)*180 / n2 + (n3 - 2)*180 /n3 = 360
        
                                where n1, n2 and n3 are the three polygons so   
                                that n1 is a n1-polygon, n2 = n2-polygon and 
                                n3 = n3-polygon.
                                
symplification results in a very nice equation:

(3)     2/n1 + 2/n2 + 2/n3 = 1

To avoid duplicate solution we can assume, without loss of generality, that:

(4)     2 < n1 < n2 < n3,   assuming that n1, n2 and n3 are all different 
                            (as posed).
                            
                            
Using (3) and (4) we have:

 (5)    2/n1 < 1 and 2/n1 > 1/3 what results in 3 <= n1 <= 5
 
Using (5) we assume n1 = 3 resulting in:

 (6)    2/n2 + 2/n3 = 1/3
 
Since n2 < n3 we have:

 (7)    2/n2 < 1/3 and 2/n2 > 1/6 what results in 7 <= n2 <= 11
 
Solutions for n1 = 3 are:

        (8.1)   n1 = 3, n2 = 7 and n3 = 42 
        (8.2)   n1 = 3, n2 = 8 and n3 = 24 
        (8.3)   n1 = 3, n2 = 9 and n3 = 18 
        (8.4)   n1 = 3, n2 = 10 and n3 = 15
        
Solutions for n1 = 4 are:

        (8.5)   n1 = 4, n2 = 5 and n3 = 20 
        (8.6)   n1 = 4, n2 = 6 and n3 = 12
        
Solutions for n1 = 5 are: 

         none.
         
This leaves us with a total of 6 solutions for the regular n-polygon problem.

In our first message, we thought we answered all your questions. We read the 
problem again and saw "Can you find a set of polygons that meet the above 
criteria if there are more than three polygons?".

So, lets assume there are four n-polygons.

Then, with the vertex-formula, we get:

(1)    1/n1 + 1/n2 + 1/n3 + 1/n4 = 1

In general, if you try it with k regular polygons the vertex formula is

(1a)    sum(1<=i<=k, 1/ni) = 0.5*k - 1

But first for four n-polygons.

We assume 3<=n1=4.

Okay!!

If the polygons may be the same; we get the following solutions for k=4:

        - n1=4, n2=4, n3=4, n4=4  
        - n1=3, n2=4, n3=4, n4=6
        - n1=3, n2=3, n3=6, n4=6      
        - n1=3, n2=3, n3=4, n4=12


From Ken H. Burres III (khburres@detour.com)

I found the following polygon combinations (deonted by # of sides):
3,7,42; 3,8,24; 3,9,18; 3,10,15; 4,5,20; 4,6,12

1. Since the polygons come together at a vertex, the sum of all the 
angles must be 360 degress
2. Each polygon had an angle measure of {(p-2)*180}/p, where p is the 
number of sides in the polygon
3. Since all polygons must be different, this yields three different 
variables.  That gives us this equation:
        [((p-2)*180)/p] + [((r-2)*180)/r] + [((t-2)*180)/t] = 360
4. Factoring out 180 yields:
        [(p-2)/p] + [(r-2)/r] + [(r-2)/r] = 2
5. Each fraction can be split up:
        [1 - 2/p] + [1 - 2/r] + [1 - 2/t] = 2
6. Combining all the ones and subtracting them from both sides gives us:
        -2/p + -2/r + -2/t = -1
7. Multiplying through by -1/2 gives us:
        1/p + 1/r + 1/t = 1/2
8. We know...
        a. p,r,t >= 3 (for a triangle is the polygon with the least # of                
sides)
        b. p,r,t cannot all be greater than 6, for then the sum would be                        
less than 1/2
        c. If one is 3, then the one other cannot equal 4 or 5, for that                        
would be greater than 1/2

9. From here I just played with the numbers (rather than doing it in
general), knowing that one of the variables had to be 3 or 4. 

If there are more than 3 polygons, say n polygons your equation would be
n unit fractions equal to -(2-n)/2. Unfortunately, this does not work
for more than three polygons.
Example: say you have four polygons.  Therefore,
1/p + 1/q + 1/r + 1/t = -(2-4)/2 = -2/2 = 1.  However 1/3 + 1/4 + 1/5 +
1/6 = .95.
if you have five, 1/3 + 1/4 + 1/5 + 1/6 + 1/7 = 1.092... when -(2-5)/2 =
3/2 = 1.5


Mail to Ken