怎樣解 "球不同, 但是箱子相同" 的排列組合問題 (觀眾的解法)

แชร์
ฝัง
  • เผยแพร่เมื่อ 17 ธ.ค. 2024

ความคิดเห็น • 49

  • @張騰達
    @張騰達 2 หลายเดือนก่อน +74

    感謝老師特別為我的留言拍了一部影片。這是我在高中某次考試的時候發現的方法,巧妙的是可以化成等比級數的公式,所以特別有印象。

    • @bprptw
      @bprptw  2 หลายเดือนก่อน +9

      Here's the man! 謝謝你的分享. 那個等比級數看上去真是爽快啊. 現在我一直在想如果有4個一樣的箱子, 或是更多箱子的時候可以怎麼做.

    • @wenchiching
      @wenchiching 2 หลายเดือนก่อน +1

      天哪,好強!怎麼想到的?

    • @iruvata133
      @iruvata133 2 หลายเดือนก่อน

      太棒了吧,居然能發現這麼好玩的算法

    • @jackshih2262
      @jackshih2262 2 หลายเดือนก่อน

      請教4個箱子如何做?6顆球

    • @tirs9458
      @tirs9458 2 หลายเดือนก่อน

      感覺方法不是很通用,假如有1000顆不同的球,放到150個相同的箱子裡邊,有更通用的方法嗎?😂

  • @tototoco
    @tototoco 2 หลายเดือนก่อน +13

    要將6顆不同的球放進3個相同的箱子,可以使用斯特林數(Stirling numbers of the second kind)來計算。
    斯特林數 𝑆(𝑛,𝑘) 表示將 𝑛 顆不同的球分成 𝑘 個非空的相同的箱子的方法數。
    對於本題,我們需要計算 𝑆(6,1)、𝑆(6,2) 和 𝑆(6,3) 的總和。
    𝑆(6,1)+𝑆(6,2)+𝑆(6,3)=1+31+90=122
    所以,將6顆不同的球放進3個相同的箱子,一共有 122 種放法。

    • @tototoco
      @tototoco 2 หลายเดือนก่อน

      斯特林數:
      docs.google.com/spreadsheets/d/1ZAIoJcbfT6Jq9LR_-z7ydxIvXSlUBTHP/edit?usp=sharing&ouid=105734715278473767662&rtpof=true&sd=true

    • @sincho48763
      @sincho48763 2 หลายเดือนก่อน +1

      是不是chatgpt

    • @tototoco
      @tototoco 2 หลายเดือนก่อน

      @@sincho48763 是

    • @tototoco
      @tototoco 2 หลายเดือนก่อน

      @@sincho48763 absolutely, yes

  • @terryobeyes
    @terryobeyes 2 หลายเดือนก่อน +6

    這題的公式解是 S(n, k) + S(n, k-1) + ... + S(n, 1)。(加到0項也可以,因為S(n, 0)=0)。n是球數、k是箱子數、S是第二類斯特林數。
    論時間複雜度的話,據我所知,直接計算S(n, k)大概要算k次的"某數的n次方"加上算一次k的階乘,這兩個運算可能分別需要 log(n)和k次的乘法運算,這樣解這題的時間複雜度可能落在 O(k^2(logn+k))。若用建表的方式去解,可以O(n^2),用python的話五行內寫得出來(只用list、range、sum)。

  • @維-n5x
    @維-n5x 2 หลายเดือนก่อน +14

    用 the same 會有問題,容易讓人誤會這些箱子其實是同一個
    (數學常用的手法:稱兩個同類物件為 x, y,然後推論出其實是同一個)
    而用 identical、indistinguishable 就恰當得多

    • @DoongXiouHua
      @DoongXiouHua 2 หลายเดือนก่อน +2

      我看只有你會誤會啊

    • @strifefor4016
      @strifefor4016 2 หลายเดือนก่อน

      @@DoongXiouHua你懂個屁?不然為什麼各國家英文版本的試卷都不用same?

  • @人生狗熊
    @人生狗熊 2 หลายเดือนก่อน +7

    這方法厲害在基本上不會漏掉任何一個方法,然後最後相加用等比級數更漂亮

  • @SakretteAmamiya
    @SakretteAmamiya 2 หลายเดือนก่อน +2

    還沒看老師的算法
    我想到的做法:
    首先,把1號球丟進去,有1號球的箱子就是A箱
    2號球可以進A箱,也可以進其他箱
    如果2號球進了其他箱,那有2號的就是B箱,則三個箱子已經不同,剩下4顆球有3^4種放法
    如果2號球進了A箱,則輪到3號球確定是否進A箱,如果不進A箱,那放了3號球的就是B箱,則剩下3顆球有3^3種放法
    以此類推,可以得到有產生「B箱」時的方法數是3^4 + 3^3 + ... + 3 + 1
    而沒有產生「B箱」表示全部都在A箱,一種方法
    所以總和是1 + (1 + 3 + 3^2 + ... + 3^4) = 1 + (3^5-1)/(3-1) = 122種
    要嘗試看看如何擴展到任意數量個箱子

    • @SakretteAmamiya
      @SakretteAmamiya 2 หลายเดือนก่อน

      看完影片,竟然跟我是一樣的做法XDD

  • @bye1663
    @bye1663 2 หลายเดือนก่อน +4

    自己製造不同的箱子好頂

  • @林靖能
    @林靖能 2 หลายเดือนก่อน +7

    6個球隨便丟= 3^6, 三個箱子一樣要除掉重複的3!=6,但其中6個同箱子只重複3次要另外算,答案=(3^6-3)/6 + (3/3)=122

    • @exlife9446
      @exlife9446 2 หลายเดือนก่อน +1

      对啊,我第一想法也是这么算得。6 个球放入三个箱子,每个都有 3 个位置可选,所以是 3 的 6 次方种方法,放进去以后,三个箱子可以随意排列(但在结果里只能算一种),所以要除以所有可能的排列数。一般来说,都有 6 种排列(123, 132, 213, 231, 312, 321)。但是如果 6 个球都放入一个箱子,那就只有 3 种排列的可能性了 ( 1xx, x1x, xx1),这个我倒是给忽略了。

  • @謙仔-u6o
    @謙仔-u6o 2 หลายเดือนก่อน +3

    高手在民間👏

  • @Aa123-n3w
    @Aa123-n3w 2 หลายเดือนก่อน

    重複組合很舒服~~

  • @iruvata133
    @iruvata133 2 หลายเดือนก่อน

    好酷喔!!!

  • @the_fluffychan
    @the_fluffychan 2 หลายเดือนก่อน +2

    我的天,居然拍了兩次!

  • @weibeok
    @weibeok หลายเดือนก่อน

    一開始丟1.2號是為了讓3個箱子變不同嗎 真深奧

  • @sanyuanChen
    @sanyuanChen 2 หลายเดือนก่อน

    其實可以有個快速暴力想法:
    你的箱子因為是identical,所以把球決定好之後,去排列箱子,可是因為是identical,所以C(3,2)的排法的結果其實是identical
    所以就變成 3⁶ / C(3,2) = 3⁵

    • @sanyuanChen
      @sanyuanChen 2 หลายเดือนก่อน

      這個是32年前我們學排列組合的時候,老師講過的暴力解

    • @ken90007
      @ken90007 2 หลายเดือนก่อน

      ⁠​⁠​⁠@@sanyuanChen 3^5=243,可是答案是122😅

    • @sanyuanChen
      @sanyuanChen 2 หลายเดือนก่อน

      @@ken90007 oh........多了最後一個1.......我想想

    • @DdavidC
      @DdavidC 2 หลายเดือนก่อน

      @@sanyuanChen 這個方法的問題在於,認定每種排法都一定有 C(3, 2) = 3 種重複,然而我們可以輕鬆舉出反例:
      [ 1 2 3 ] [ 4 5 6 ] []
      [ 1 2 3 ] [] [ 4 5 6 ]
      [] [ 1 2 3 ] [ 4 5 6 ]
      [ 4 5 6 ] [ 1 2 3 ] []
      [ 4 5 6 ] [] [ 1 2 3 ]
      [] [ 4 5 6 ] [ 1 2 3 ]
      簡單思考一下就知道,當「有兩個或三個箱子有球時,被重複算到的次數是 6 而不是 3(你錯誤的第一點在於這不是組合而是排列,不該是 C(3, 2) = 3 種重複而是 3! = 6 種重複)」,而「只有一個箱子有球時,被重複算到的次數是 3(你錯誤的第二點,沒有注意到並非所有排法的重複次數都一樣)」
      所以如果要照這個思路,正確的作法如下:
      1. 總共 729 種不考慮箱子相同的排列方式
      2. 先排除掉僅有 3 種的單箱子有六顆球的排法
      3. 剩下的都是重複次數為 3! = 6 的狀況
      4. 最後再加回 1 種被我們排除掉的六球一箱狀況
      得到 (729 - 3) / 3! + 1 = 122 正解

    • @dying476
      @dying476 2 หลายเดือนก่อน +3

      ​​@@sanyuanChen 如果三個箱子內容物各不相同(有至少兩個不是空的)那麼排列數是3!,而不是C3取2。
      如果6顆球都在同一個箱子,那麼排列數才是C3取2,所以算式應該是
      (3^6 - 3) / 3! + 3/3=122
      前面那一項是「三個箱子內容物各不相同的排列數」除以3!,後面則是「球都在同一個箱子裡的排列數」除以3
      編輯:剛去看了李翰老師的影片,發現這就是他的算法

  • @小豆-z4x
    @小豆-z4x 2 หลายเดือนก่อน

    這方法漂亮,想問問老師2024AMC8的第25題是不是也可以用類似的標記方法呢?(這題也是排列組合 再算機率)

  • @krenzeev
    @krenzeev 2 หลายเดือนก่อน

    n個異物分成m堆,共有幾種分法,可用遞迴求得一公式

  • @bprptw
    @bprptw  2 หลายเดือนก่อน +9

    那如果我們有6個不同的球跟10個相同的箱子怎麼算?

    • @pond6333
      @pond6333 2 หลายเดือนก่อน +10

      這種箱子跟球的問題在組合學叫做 Twelvefold way 直接查表就可以了😀

    • @DoongXiouHua
      @DoongXiouHua 2 หลายเดือนก่อน +2

      我上次有跟其他人討論推導出一個可以適用不同數量的球跟箱子的公式,雖然有點小複雜
      當有m個不同球跟n個相同箱子的方法數:
      令Ak=[k^m-P(k,k-1)*A(k-1)-P(k,k-2)*A(k-2)-......-P(k,1)*A1]/k!,然後把A1加到An
      基本的邏輯是,Ak代表球放到恰好k個箱子的方法數,並且先把箱子當成不同的,之後再除k!

    • @雪羽夜-u5b
      @雪羽夜-u5b 2 หลายเดือนก่อน

      ​@@DoongXiouHua哦在這邊看到你了。
      基本上就是可以寫成遞迴形式,針對不同的球跟箱子數量會跟比較少的球或比較少的箱子的情況有關,這樣化簡到最後就能全部變成最基本的情況來算。

    • @terryobeyes
      @terryobeyes 2 หลายเดือนก่อน

      @@bprptw 多出來的箱子用不到阿XD

    • @Sailo-hd5si
      @Sailo-hd5si 2 หลายเดือนก่อน

      6個球最多只能放6個箱子,也就是說最少有4個空箱。排列方式跟有6個箱各1個球重覆,因此可以當成6個球6個箱來算,結果一樣。

  • @user-yg31415
    @user-yg31415 19 วันที่ผ่านมา

    這個方法不具普遍性,四個箱子就已經不行。

  • @生活空間
    @生活空間 2 หลายเดือนก่อน +1

    這種題目有沒有辦法轉成公式化?畢竟映射在生活中 同樣箱子不好去思考(可能用分堆?)
    像是同樣的球分到不同箱子 可以映射成
    x+y+…=k 的非負整數解

    • @a41503
      @a41503 2 หลายเดือนก่อน

      重複組合?

    • @ryoukiwei9375
      @ryoukiwei9375 2 หลายเดือนก่อน +1

      這題在離散數學屬於基本題 這類型稱為 m 相異物放入 n 相同箱 *且允許空箱* 的方法數
      而公式解即:S(m, 1) + S(m, 2) +...+ S(m, n) 其中 S(m, n) 為 Stirling numbers of the second kind (這東西有兩類 我們這邊談的是第二類)
      其他留言也有提到這個公式解 以下簡稱 Stirling numbers
      這個 Stirling numbers 有個很深刻的看法即「將含有 m 個元素的集合分割成 n 個非空集合的方法數」
      回到公式解本身 為什麼長這樣呢?
      考慮 m 相異物放入 n 相同箱 恰有 k 個不可空 則我們知道方法數為 S(m, k), 1

  • @broytingaravsol
    @broytingaravsol 2 หลายเดือนก่อน +1

    該觀眾也姓張嗎,好像失焦了@@

  • @Jason-hc7qt
    @Jason-hc7qt 2 หลายเดือนก่อน

    為什麼有些影片在英文頻道有做但沒做在英文頻道