MathOverflow will be down for maintenance for approximately 3 hours, starting Monday evening (06/24/2013) at approximately 9:00 PM Eastern time (UTC-4).

Here is a "pretty vanilla" mathematical solution to your problem, which works in $n^3 \log n$ n^3$time, but programming it is quite easy, it's a matter of 1 hour. So, in In the beginning we throw away every$C_i$($1\leq i\leq n$) that doesn't intersect$C_{n+1}$. We also throw away every$C_i$($1\leq i\leq n$) that lies inside another$C_j$($1\leq j\leq n$). From now on we consider "lunar shades"$L_{i}=C_{n+1} \cap C_{i}$, where$1\leq j\leq n$. Some$L_i$may remain equal to whole$C_i$, of course. The initial problem is then equivalent to the following: is$C_{n+1}$equal to the union$U=\cup_{i=1,\ldots, n} L_i$? We will reformulate it in this way: is the boundary$\partial U$equal to the boundary circle$\partial C_{n+1}$. To check this we do the Check 0) We check the outer border$\partial C_{n+1}$). To do that we find all points$p_j$which$\partial C_i$($1\leq j\leq n$) cut on$\partial C_{n+1}$. Then we sort all these points on theri angle coordinate on$\partial C_{n+1}$, obtaining sorted points$t_j$($j=1,\ldots,K\leqslant 2n$). And then for every$j=1,...,K$we check the middle of the segment$[t_j,t_{j+1}]$-- whether it belongs to some circle$C_i$with$1\leq i\leq n$. Of course, we also check the middle point of$[t_K,t_1]$. If some middle points fails, then we are done, and this point is not covered. If not, we continue and check if$\partial U$doesn't contain points inside$C_{n+1}$. We do that with Checks 1...n ) They exactly similar to the Check 0, but we consider the arc$A_j$of$C_j$which is inside$C_{n+1}$as the segment of check. So we again find the points which$C_i$sect on$C_j$within$A_j$, including additionally the ends of$A_i$. Then we sort these points up to$C_j$'s angle coordinate and check the middle points -- whether each of them is covered by some circle. If one of these checks fails, we find uncovered points. If all such checks succeed -- then$C_{n+1}$is covered. P.S. Using the simple algorithm$n \log n$for computing the union of segments on a border of circle, one can reduce the complexity to$n^2 \log n$. 1 Here is a "pretty vanilla" mathematical solution to your problem, which works in$n^3 \log n$time, but programming it is quite easy, it's a matter of 1 hour. So, in the beginning we throw away every$C_i$($1\leq i\leq n$) that doesn't intersect$C_{n+1}$. We also throw away every$C_i$($1\leq i\leq n$) that lies inside another$C_j$($1\leq j\leq n$). From now on we consider "lunar shades"$L_{i}=C_{n+1} \cap C_{i}$, where$1\leq j\leq n$. Some$L_i$may remain equal to whole$C_i$, of course. The initial problem is then equivalent to the following: is$C_{n+1}$equal to the union$U=\cup_{i=1,\ldots, n} L_i$? We will reformulate it in this way: is the boundary$\partial U$equal to the boundary circle$\partial C_{n+1}$. To check this we do the Check 0) We check the outer border$\partial C_{n+1}$). To do that we find all points$p_j$which$\partial C_i$($1\leq j\leq n$) cut on$\partial C_{n+1}$. Then we sort all these points on theri angle coordinate on$\partial C_{n+1}$, obtaining sorted points$t_j$($j=1,\ldots,K\leqslant 2n$). And then for every$j=1,...,K$we check the middle of the segment$[t_j,t_{j+1}]$-- whether it belongs to some circle$C_i$with$1\leq i\leq n$. Of course, we also check the middle point of$[t_K,t_1]$. If some middle points fails, then we are done, and this point is not covered. If not, we continue and check if$\partial U$doesn't contain points inside$C_{n+1}$. We do that with Checks 1...n ) They exactly similar to the Check 0, but we consider the arc$A_j$of$C_j$which is inside$C_{n+1}$as the segment of check. So we again find the points which$C_i$sect on$C_j$within$A_j$, including additionally the ends of$A_i$. Then we sort these points up to$C_j$'s angle coordinate and check the middle points -- whether each of them is covered by some circle. If one of these checks fails, we find uncovered points. If all such checks succeed -- then$C_{n+1}$is covered. P.S. Using the simple algorithm$n \log n$for computing the union of segments on a border of circle, one can reduce the complexity to$n^2 \log n\$.