仕切りと玉(Stars and Bars)の計算
x1 + … + xk = n の整数解の個数を、条件(xi ≥ 0 / xi ≥ 1 / xi ≥ ai)を切り替えて計算します(同じ玉の分配)。非負(xi≥0)の場合は、重複組合せ(kHn)と同じ数になります。
使い方(3ステップ)
- n(合計)と k(箱/変数の数)を入力します。
- 条件(xi ≥ 0 / xi ≥ 1 / xi ≥ ai)を選びます。
- 共有URLをコピーして、同じ状態を保存できます。
注意:このページは同じ玉の分配(整数解)を数えます。玉が区別できる場合は対象外です。
図解(星と仕切り)
小さい入力のとき、星(*)と仕切り(|)で「ある1つの解の表し方」を図で示します(唯一の並びではなく、考え方の補助です)。
結果
条件: —
方法: —
個数: —
桁数: —
式: —
手順(短く)
考え方を表示
具体例(解の列挙)
小さいn,kで解を表示
表示件数には上限があります(性能のため)。大きい入力では個数のみをご利用ください。
公式とよくある間違い
- 非負(xi≥0):
C(n+k−1, k−1) - これは重複組合せ(kHn)と同じ:
kHn = C(n+k−1, n)(=C(n+k−1, k−1))。 - 正(xi≥1):
C(n−1, k−1)(n<kなら0) - 下限(xi≥ai):
n−Σaiに変換し、C((n−Σai)+k−1, k−1)
よくある間違い
- 「同じ玉」か「別々の玉」かを混同する(このページは同じ玉の分配)。
- xi≥1 のとき
n<kは0。 - 下限ありは
Σaiを引く(全て同じ a のときだけ一括でOK)。
関連電卓
よくある質問
仕切りと玉(Stars and Bars)とは?
同じ玉をk個の箱に分ける方法の数を数える考え方で、x1+…+xk=n の整数解の個数(例:xi≥0)を数えます。
なぜ非負(xi≥0)は C(n+k−1, k−1)?
星n個と仕切りk−1本を一列に並べ、仕切りの位置を選ぶと各解に一対一対応します。よって C(n+k−1, k−1) になります。
xi≥1(正の整数解)のときは?
yi=xi−1 と置くと y1+…+yk=n−k(yi≥0)に変換できるので、n≥k のとき C(n−1, k−1)、n<k のとき 0 です。
下限 xi≥ai のときの考え方は?
yi=xi−ai と置くと y1+…+yk=n−Σai(yi≥0)に変換できます。n≥Σai のとき C((n−Σai)+k−1, k−1)、n<Σai のとき 0 です。
玉が区別できる(別々の玉)場合は?
このページは“同じ玉”の分配(整数解)を数えます。玉が区別できる場合は別のモデル(例:k^n など)になるため、問題設定に合う電卓を使ってください。