Sharing pizza fairly
Mathematica, 221 bytes

f=(A=Pi.01Length@#2/#;l=m/.Solve[Norm[{a,b}-m{Cos@t,Sin@t}]==.1,m];k=(l/.{a-&gt;#,b-&gt;#2})&amp;@@@#2;d=1.*^-5;For[Print[h=B=0];n=1,n&lt;#,h+=d,(B+=If[Im@#&lt;0,0,d(Max[#2,0]^2-Max[#,0]^2)/2])&amp;@@@(k/.{t-&gt;h});If[B&gt;A,n+=1;Print@h;B-=A]])&amp;


Ungolfed:

f = (
   A = Pi .01 Length@#2/#;
   l = m /. Solve[Norm[{a, b} - m {Cos@t, Sin@t}] == .1, m];
   k = (l /. {a -&gt; #, b -&gt; #2}) &amp; @@@ #2;
   d = 1.*^-5;
   For[Print[h = B = 0]; n = 1, n &lt; #, h += d,
    (
      B += If[Im@# &lt; 0, 0, d (Max[#2, 0]^2 - Max[#, 0]^2)/2]
    ) &amp; @@@ (k /. {t -&gt; h});
    If[B &gt; A, n += 1; Print@h; B -= A]
   ]
) &amp;


This defines a function which takes as parameters the number of slices and a list of pairs for the peperoni coordinates, like

f[8, {{0.4, 0.2}, {-0.3, 0.1}, {-0.022, -0.5}, {0.3, -0.32}}]


It will print the slices to the console as it traverses the pizza.

On most pizzas, this is fairly slow, because (to achieve the required precision) I'm integrating the peperoni area from 0 to 2π in steps of 1e-5. To get a slightly less precise result in a reasonable amount of time, you can change the 1.*^-5 at the end to 1.*^-3.

How it works

The idea is to sweep out the slices of pizza while integrating over the area of the peperoni pieces covered. Whenever that area hits the required amount of peperoni per person, we report the current angle and reset the area counter.

To obtain the peperoni area swept out, we intersect the line with the peperoni to give use the two distances from the origin, where the line intersects with the peperoni. Since a line extends to infinity in both directions, we need to clamp these distances to non-negative values. This solves two problems:


Counting intersections with each peperoni twice, once positive and once negative (which would actually yield to an overall area of 0).
Counting only wedges of peperoni pieces which include in the origin.


I'll include some diagrams later.