解決済み
diehard

x+y+z+w=10x + y + z + w = 10

を満たす0以上の整数の組(x,y,z,w)は何通りという問題はどうやって求めますか?棒と球でイメージするやり方以外の方法を教えてください

回答 1件

ベストアンサー

DoubleExpYui

正直、棒と球のやり方が一番シンプルではある。


それ以外でとなると、例えば xx を ii とすれば、

y+z+w=10−i(0≦i≦10)y+z+w=10-i\quad (0\leqq i\leqq10)

となり、さらに yy を jj とすれば、

z+w=10−i−j(0≦i≦10,0≦j≦10−i)z+w=10-i-j\quad (0\leqq i\leqq10,0\leqq j\leqq 10-i)

となり、さらに zz を kk とすれば、

w=10−i−j−k(0≦i≦10,0≦j≦10−i,0≦k≦10−i−j)w=10-i-j-k\quad (0\leqq i\leqq10,0\leqq j\leqq 10-i,0\leqq k\leqq10-i-j)

となり、ww はただ一通りとなるので、

∑i=010∑j=010−i∑k=010−i−j1\sum_{i=0}^{10}\sum_{j=0}^{10-i}\sum_{k=0}^{10-i-j}1

としてやればできないことはないけどめんどくさい…。


あとは表に落とし込むとか。これも書くのめんどくさい。

  • DoubleExpYui

    ∑\sum 使える理由:ただの数え上げの和の計算を ∑\sum で書いてるだけです。

    わかりやすく文字と合計減らしてみます。

    例えば x+y=3x+y=3 のとき、xx が決まれば yy は 11 通りしかないので

    ∑k=031=4\sum_{k=0}^{3}1=4

    とかけます。

    これは

    (x,y)=(0,3),(1,2),(2,1)(3,0)(x,y)=(0,3),(1,2),(2,1)(3,0)

    の 44 通りのことを表します。


  • DoubleExpYui

    文字を 11 つ増やして x+y+z=3x+y+z=3 のとき、xx が決まれば yy の取れる値の範囲が決まり、その範囲で数を決めてやれば zz は 11 通りしかないので

    ∑j=03∑k=03−j1=∑j=03{1+(3−j)}=10\sum_{j=0}^{3}\sum_{k=0}^{3-j}1=\sum_{j=0}^{3}\{1+(3-j)\}=10

    とかけます。

    これは

    (x,y,z)=(0,0,3),(0,1,2),(0,2,1),(0,3,0),(1,0,2),(1,1,1),(1,2,0),(2,0,,1),(2,1,0)(3,0,0)\begin{align*}(x,y,z)=&(0,0,3),(0,1,2),(0,2,1),(0,3,0),(1,0,2),\\&(1,1,1),(1,2,0),(2,0,,1),(2,1,0)(3,0,0)\end{align*}

    の 1010 通りのことを表します。


    こんな感じ。

関連する質問

関連する記事

質問する