V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
bigpigeon
V2EX  ›  LeetCode

关于 leetcode 的 70. Climbing Stairs 的问题

  •  
  •   bigpigeon · 2016-09-19 17:45:20 +08:00 · 3048 次点击
    这是一个创建于 2746 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我的做法是这样

    func climbStairs(n int) int {
    	sum := 0
    	for i, j := n, 0; i >= 0; i, j = i-2, j+1 {
    		sum += i*j + 1
    	}
    	return sum
    }
    

    我发现 m 个 1 和 n 个 2 组合总数等于 m*n+1

    但当我提交时却报错:

    Input:
    6
    Output:
    12
    Expected:
    13
    

    但我去验证发现确实应该是 12 个才对啊 楼梯数为 6 的爬法

    111111
    
    11112
    11121
    11211
    12111
    21111
    
    1122
    1212
    1221
    2121
    2211
    
    222
    

    难道我忽略什么了?

    8 条回复    2016-09-19 21:17:21 +08:00
    bigpigeon
        1
    bigpigeon  
    OP
       2016-09-19 18:11:07 +08:00
    timekiller
        2
    timekiller  
       2016-09-19 18:18:59 +08:00 via iPhone   ❤️ 1
    2112
    theFool
        3
    theFool  
       2016-09-19 19:34:38 +08:00   ❤️ 1
    Fibonacci ?
    czheo
        4
    czheo  
       2016-09-19 19:56:43 +08:00   ❤️ 1
    hanzichi
        5
    hanzichi  
       2016-09-19 20:14:28 +08:00
    2112 。。。
    hanzichi
        6
    hanzichi  
       2016-09-19 20:15:47 +08:00   ❤️ 1
    m 个 1 和 n 个 2 组合总数等于 m*n+1 。。
    这怎么推出来的。。很明显是 C(n+m,n) 吧。。

    安利下我的题解 Repo => https://github.com/hanzichi/leetcode
    zhy0216
        7
    zhy0216  
       2016-09-19 20:25:20 +08:00   ❤️ 1
    2112 ...
    bigpigeon
        8
    bigpigeon  
    OP
       2016-09-19 21:17:21 +08:00
    @hanzichi
    确实粗心了,非常感谢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5468 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 08:54 · PVG 16:54 · LAX 01:54 · JFK 04:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.