Patrick95
V2EX  ›  问与答

这道题用程序来计算 求比较精简的代码(PHP 或 Python)

  •  1
     
  •   Patrick95 · Apr 19, 2016 · 2880 views
    This topic created in 3704 days ago, the information mentioned may be changed or developed.

    一匹马车 车上坐着 5 个人,每人背 5 个袋子,每个袋子里有 5 条大猫,每条大猫带着 5 只小猫,每只小猫带着 5 只老鼠当零食。 求一共多少条腿

    不算马腿。

    18 replies    2016-04-20 23:28:57 +08:00
    icybee
        1
    icybee  
       Apr 20, 2016
    感觉智商被碾压了。。。
    JohnR
        2
    JohnR  
       Apr 20, 2016
    310
    JohnR
        3
    JohnR  
       Apr 20, 2016
    我用的思维导图软件辅助计算的。不知道有错没有
    msg7086
        4
    msg7086  
       Apr 20, 2016
    pry(main)> [4,4,4,0,2,0].inject{|s,d| (s<<2)+s+d}
    => 15510

    不知道对不对。不过这 5 个人背着三千多只老鼠是想要干什么?
    fractal314
        5
    fractal314  
       Apr 20, 2016 via Android
    5*2+(5^3+5^4+5^5)*4=10+500*155=77510
    bigtom
        6
    bigtom  
       Apr 20, 2016
    sum([pow(5,5-i)*x for (i,x) in enumerate([4,4,4,0,2,0])])

    15510
    SpicyCat
        7
    SpicyCat  
       Apr 20, 2016
    「每只小猫带着 5 只老鼠当零食」,被萌到了,哈哈哈😹
    xuwenmang
        8
    xuwenmang  
       Apr 20, 2016
    变量
    人类=5 人
    大猫=5 人*5 袋*5 大猫
    小猫=5 人*5 袋*5 大猫*5 小猫
    老鼠=5 人*5 袋*5 大猫*5 小猫*5 老鼠

    算法
    人类*2+(大猫+小猫+老鼠)*4

    声明:不是程序员,
    Patrick95
        9
    Patrick95  
    OP
       Apr 20, 2016
    @msg7086 结果是对的 但是我看不懂这代码 是 ruby 吗
    Patrick95
        10
    Patrick95  
    OP
       Apr 20, 2016
    @bigtom 结果是对的 但是用一行来写的话好难理解啊。
    Patrick95
        11
    Patrick95  
    OP
       Apr 20, 2016
    @fractal314 差太多啦
    -----

    @JohnR 310 肯定不会啦
    msg7086
        12
    msg7086  
       Apr 20, 2016
    @Patrick95 是你说要精简的啊 w
    精简当然就 one-liner 了。
    Patrick95
        13
    Patrick95  
    OP
       Apr 20, 2016
    @msg7086 精简到都看不懂了=w=
    msg7086
        14
    msg7086  
       Apr 20, 2016   ❤️ 1
    @Patrick95 Inject 是个 Reducer ,相当于循环。
    s = 0; for d in [4,4,4,0,2,0]: s = s * 5 + d;
    这样应该能理解了吧?
    yhylord
        15
    yhylord  
       Apr 20, 2016 via Android
    @msg7086 为什么要拆成位运算呢?瞬间感觉回到某些国产大学 C 语言教材
    msg7086
        16
    msg7086  
       Apr 20, 2016
    @yhylord (混淆
    Patrick95
        17
    Patrick95  
    OP
       Apr 20, 2016
    @msg7086 我这样也理解不能=w= 我不是计算机科班出身 对这个实在苦手 大神能否帮助我理解下这个算法的过程。
    Patrick95
        18
    Patrick95  
    OP
       Apr 20, 2016
    @msg7086 我自己搞懂了,多谢菊苣。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5550 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 61ms · UTC 05:58 · PVG 13:58 · LAX 22:58 · JFK 01:58
    ♥ Do have faith in what you're doing.