现在有12个球一个天平,其中有一个球重量和其它不同,要求只能使用天平3次找出不同的球(注意不知道此球比其它球重量大还是小)

解决方案 »

  1.   

    three_1 = 挑出3个;
    three_2 = 再挑出3个。
    compare(three_1,three_2);compare(compare_1,compare_2){
       if (compare_1 = compare_2){
          //球在其他四个中
           one_1 = 其余四个中的一个
          one_2 = 其余四个中的一个
           compare(one_1,one_2);
       }else(){
           //球在这六个中
            two_1 = 其中的两个
            two_2 = 其中的两个
            compare(two_1,two_2);
       }
    }
      

  2.   

    three_1 = 挑出3个;
    three_2 = 再挑出3个。
    compare(three_1,three_2);compare(compare_1,compare_2){
       if (compare_1 = compare_2){
           //球在其余六个中
            two_1 = 其中的两个
            two_2 = 其中的两个
            compare(two_1,two_2);
       }else(){
           //球在这六个中
            two_1 = 其中的两个
            two_2 = 其中的两个
            compare(two_1,two_2);
       }
    }刚才看错了