• 20151023


    问题:有12个球,其中于1个球与其他11个不等重,求通过天枰(无砝码)3次称出坏球。
    某种解法:

    1、将12个球分为a、b、c三组:

    a: a1 a2 a3 a4
    b: b1 b2 b3 b4
    c: c1 c2 c3 c4

    2、通过以下方法称(python伪代码)

    if a1+a2+a3+a4 == b1+b2+b3+b4 : // x in c1 c2 c3 c4
        if c1+c2 == a1+a2 : // x in c3 c4
            if c3 == a3 :
                c4 is x
            else c3 != a3 :
                c3 is x
        elif c1+c2 != a1+a2 : // x in c1 c2
            if c1 == a1 :
                c2 is x
            else c1 != a1 :
                c1 is x
    elif a1+a2+a3+a4 != b1+b2+b3+b4 : // x in a b
        // reset a = heavier ...
        if a1+a2+a3+b1+b2 == c1+c2+c3+c4+a4 : // x in b3 b4
            if b3 == c1 :
                b4 is x
            else b3 != c1 :
                b3 is x
        elif a1+a2+a3+b1+b2 > c1+c2+c3+c4+a4 : // x in a1 a2 a3
            if a1 == a2 :
                a3 is x
            else a1 < a2 :
                a2 is x
            else a1 > a2 :
                a1 is x
        elif a1+a2+a3+b1+b2 < c1+c2+c3+c4+a4 : // x in b1 b2 a4
            if b1 == b2 :
                a4 is x
            else b1 > b2 :
                b2 is x
            else b1 < b2 :
                b1 is x
     
  • 相关阅读:
    垃圾处理现状
    买了个学生阿里云114元啊,安装mysql
    4 存储器
    3 总线
    崔大哥说基础很重要
    idea使用小积累mac
    为啥要用left join on where这样的东西
    观察者模式
    从shell中退出python命令
    locust性能测试入门
  • 原文地址:https://www.cnblogs.com/likun/p/4905088.html
Copyright © 2020-2023  润新知