有12个外观大小一样的球,其中只有一个球的重量与其它的不同(不知道是轻是重),再给你一个天平,最多用三次,找到那个特殊的球?

解决方案 »

  1.   

    首先用小球的編號分三組!各租4個!第一組是1,2,3,4;第二組是5,6,7,8;第三組是9,10,11,12;
    第一步用1,2,3,4跟5,6,7,8比!
    1.如果一樣的話錶示1到8都是正常的!跟着用(隨便3個)1,2,3跟9,10,11比!看看右邊的是重還是輕!然后在9,10,11其中抽兩個出来比!馬上得到結果!如果1,2,3跟9,10,11是一樣重量的話隨便拿一個小球跟12比比!就知道12是重還是輕!
    2.如果不一樣!就錶示9,10,11,12都是正常!那肯定會齣現一邊重一邊輕!因為我們不知道"有问题"的小球是重還是輕~那麼首先假設"左重右輕"!跟着用1,2,5跟3,4,6比!這裏又有一個分支~1.如果還是左邊重的話就說明1,2,重~或者是6輕!跟着1和2比!誰重誰就有問題!一樣的話就是6輕!
    2.相反!如果是左輕右重的話~就說明3,4重或者是5輕!用同樣方法!3和4比比!
    答案就是這樣!不明白的最好實踐一下!裏麵的假設是隨便的~妳可以假設為"左輕右重"~后麵的想法都是一樣的~把"重輕"兩字互換一下!这个不难,不过要先仔细想想,呵呵,,我写过这个的程序,不过是用JAVA写的,你可以看看, 思路是一样的,而且JAVA和C语法差不多,很容易看懂的,