プロセスを全て殺すには何回かかるか(1)

http://b.hatena.ne.jp/entry/d.hatena.ne.jp/halhorn/20100904/1283612722
これを真似しようとしていて。Project EulerProblem 309で素直に解くとソートが遅いので、並列処理で速くならないか、じゃあ配列を4等分して、それぞれ並列でソートして、それをマージしてやればいいじゃん、と思ってやってみたらうまくいかなくて、プロセスが大量発生していました。それを一つずつ殺していたら、ときどきいっぺんにたくさんプロセスを殺せるときがありました。
それでこんな問題を思いつきました。

プロセスは子プロセスをM個生成する。発生したプロセスから順に子プロセスを発生する。プロセスは全部でN個発生する。この状態からプロセスを一つずつ殺していく。ただし、そのプロセスを殺したら子プロセスも再帰的に殺すことになる。平均何回でプロセスを全て殺せるか。

例えば、N=5、M=2なら、

      0
    / \
   1     2
 / \
3     4

そして、1を殺したら、

      0
       \
         2

こうなることになります。0を殺したら全て殺すことになります。
まだ全然コード書けてません。