ACM ICPC World Finals 2009
There are several ways of solving this problem, ranging from complicated solutions whose correctness is easy to prove, to somewhat easier solutions whose correctness is more difficult to prove.
A natural starting point is to binary search for the minimum possible radius r of the outer circle. To check whether radius r is achievable, one can do as follows: start by placing the outer circle, and then try to place the small circles inside it, one by one. When placing a new circle, one can assume without loss of generality that there exists a circle which should touch two of the already placed circles (or the outer circles in case this is the only one placed so far). When all circles have been placed, one can check that none of them intersect to see if the placement succeeded. Trying all possible ways of placing the circles (with only four inner circles, there are only a few hundred different such ways), one can determine whether radius r is possible.