程式設計之美 4 6 桶中取黑白球

2021-08-27 15:14:23 字數 2021 閱讀 3904

題目:有乙個桶,裡面有白球、黑球各100個,人們必須按照以下的規則把球取出來:

1、每次從桶裡面拿出來兩個球;

2、如果是兩個同色的球,就再放入乙個黑球;

3、如果是兩個異色的球,就再放入乙個白球;

思路1:找規律

使用(黑球個數, 白球個數)來表示桶中黑球和白球的個數變動,正數表示增加,負數表示減少,根據規則找規律:

1、如果每次從桶裡面拿出兩個白球,則應放入乙個黑球:(0, -2) + (1, 0) = (1, -2);

2、如果每次從桶裡面拿出兩個黑球,則應放入乙個黑球:(-2, 0) + (1, 0) = (-1, 0);

3、如果每次從桶裡面拿出乙個白球和乙個黑球,則應放入乙個白球:(-1, -1) + (0, 1) = (-1, 0);

從以上各種情況可以看出以下規律:

1)每次都會減少乙個球,那麼最後的結果肯定是桶內只剩乙個球,要麼是白球,要麼是黑球;

2)每次拿球後,白球的數目要麼不變,要麼兩個兩個地減少;

所以,從上面的分析可以得知,最後不可能只剩下乙個白球,那麼必然就只能是黑球了。

思路2:使用數學方法

根據取球規則聯想到數學中異或(xor):

1、兩個相同的數,異或等於0;

2、兩個不同的數,異或等於1;

將黑球看作0,白球看作1,那麼對於每次的操作可以做這樣的想象:每次撈起兩個數字做一次異或操作,並將所得的結果再次丟回桶中,因此最後的結果實際上相當於把所有的球都進行一次異或運算,最後所得的結果即為最後剩餘的球。

異或運算規律:

1)偶數個1異或,結果為0;

2)偶數個0異或,結果為0;

3)奇數個1異或,結果為1;

4)奇數個0異或,結果為0:

對於複雜問題的分析,最有效的方法就是通過簡單的例子進行歸納,然後根據實際歸納出的結論進行結果分析,而適當的數學抽象在解決問題的過程中往往有畫龍點睛的作用。

題目:有乙個桶,裡面有白球、黑球各100個,人們必須按照以下的規則把球取出來:

1、每次從桶裡面拿出來兩個球;

2、如果是兩個同色的球,就再放入乙個黑球;

3、如果是兩個異色的球,就再放入乙個白球;

思路1:找規律

使用(黑球個數, 白球個數)來表示桶中黑球和白球的個數變動,正數表示增加,負數表示減少,根據規則找規律:

1、如果每次從桶裡面拿出兩個白球,則應放入乙個黑球:(0, -2) + (1, 0) = (1, -2);

2、如果每次從桶裡面拿出兩個黑球,則應放入乙個黑球:(-2, 0) + (1, 0) = (-1, 0);

3、如果每次從桶裡面拿出乙個白球和乙個黑球,則應放入乙個白球:(-1, -1) + (0, 1) = (-1, 0);

從以上各種情況可以看出以下規律:

1)每次都會減少乙個球,那麼最後的結果肯定是桶內只剩乙個球,要麼是白球,要麼是黑球;

2)每次拿球後,白球的數目要麼不變,要麼兩個兩個地減少;

所以,從上面的分析可以得知,最後不可能只剩下乙個白球,那麼必然就只能是黑球了。

思路2:使用數學方法

根據取球規則聯想到數學中異或(xor):

1、兩個相同的數,異或等於0;

2、兩個不同的數,異或等於1;

將黑球看作0,白球看作1,那麼對於每次的操作可以做這樣的想象:每次撈起兩個數字做一次異或操作,並將所得的結果再次丟回桶中,因此最後的結果實際上相當於把所有的球都進行一次異或運算,最後所得的結果即為最後剩餘的球。

異或運算規律:

1)偶數個1異或,結果為0;

2)偶數個0異或,結果為0;

3)奇數個1異或,結果為1;

4)奇數個0異或,結果為0:

對於複雜問題的分析,最有效的方法就是通過簡單的例子進行歸納,然後根據實際歸納出的結論進行結果分析,而適當的數學抽象在解決問題的過程中往往有畫龍點睛的作用。

程式設計之美 桶中取黑白球

題目 有乙個桶,裡面有白球 黑球各100個,人們必須按照以下的規則把球取出來 1 每次從桶裡面拿出來兩個球 2 如果是兩個同色的球,就再放入乙個黑球 3 如果是兩個異色的球,就再放入乙個白球 解法一 用黑白球各兩個,來模擬,從小到多,化繁為簡,進行分析和推斷,找出其內在的規律,並歸納總結。推斷出 每...

程式設計之美 桶中取黑白球問題

有乙個桶,裡面有白球 黑球各100個,人們必須按照以下規則把球取出來 每次從桶裡面拿兩個球 如果是兩個同色的球,就再放入乙個黑球 如果是兩個異色的球,就再放入乙個白球。問題是 最後桶裡面只剩下乙個黑球的概率是多少?針對這樣乙個問題,我們有兩種不一樣的解法 方法一 首先,我們可以通過相應的數學式來建立...

程式設計之美 黑白球問題

題目 有乙個桶,裡面有白球 黑球各100個,人們必須按照以下的規則把球取出來 1 每次從桶裡面拿出來兩個球 2 如果是兩個同色的球,就再放入乙個黑球 3 如果是兩個異色的球,就再放入乙個白球 問 最後桶裡面只剩下乙個黑球的概率是多少?思路1 找規律 使用 黑球個數,白球個數 來表示桶中黑球和白球的個...