このツールでできること
「ランダムチーム分けツール」は、参加者リストを指定した数のチームにできるだけ均等に振り分けるツールです。名前をランダムにシャッフルしたうえでグループに分割し、一部のグループは人数が1人多く、残りのグループは1人少なくなります。そのため、どのチームも他のチームと最大1人の差しか生じません。
使い方
参加者の合計人数と、作りたいグループ数を入力するだけ。1グループあたりの人数の範囲、最も多いグループと最も少ないグループの人数、そして人数が割り切れないときに「あと1人」が加わるグループがいくつになるかまで、正確に表示します。
計算式の仕組み
人数を n、グループ数を g とすると、最小のグループ人数は \(\left\lfloor n/g \right\rfloor\)(n÷gの小数点以下を切り捨て)、最大のグループ人数は \(\left\lceil n/g \right\rceil\)(切り上げ)になります。余り \(r = n \bmod g\) は、1人多く割り当てられるグループの数を表します。この r 個のグループが人数の多いグループ、残りの \(g - r\) 個が人数の少ないグループです。n が g で割り切れる場合は余りが0となり、すべてのグループが同じ人数になります。
$$\text{Min Size} = \left\lfloor \frac{\text{People}}{\text{Groups}} \right\rfloor, \quad \text{Max Size} = \left\lceil \frac{\text{People}}{\text{Groups}} \right\rceil$$$$\left\{ \begin{aligned} \text{Larger Groups} &= \text{People} \bmod \text{Groups} \\ \text{Smaller Groups} &= \text{Groups} - \left(\text{People} \bmod \text{Groups}\right) \end{aligned} \right.$$
計算例
23人を4グループに分けてみましょう。\(\left\lfloor 23/4 \right\rfloor = 5\)、\(\left\lceil 23/4 \right\rceil = 6\) なので、各グループは5人または6人になります。余りは \(23 \bmod 4 = 3\) なので、3つのグループが6人、1つのグループが5人です。検算:$$3\times 6 + 1\times 5 = 18 + 5 = 23 \checkmark$$
よくある質問
チームの人数は必ず同じになりますか? 人数がグループ数でちょうど割り切れる場合のみ同じになります。それ以外の場合は、最大でも1人差に収まります。
人数より多いグループ数を指定したらどうなりますか? グループ数は参加人数を上限とするため、各グループには必ず1人以上が割り当てられます。
振り分けは本当にランダムですか? まず名前をシャッフルしてから順番にグループへ分けるため、メンバー構成はランダムになりつつ、人数のバランスは保たれます。