题解 | #数字在升序数组中出现的次数#

剪绳子

http://www.nowcoder.com/practice/57d85990ba5b440ab888fc72b0751bf8

思路:

1: 1

2: 1 * 1

3: 1 * 2

4: 2 * 2

5: 2 * 3

6: 3 * 3

7: 1 * 3 * 3

8: 2 * 3 * 3

可以发现,优先拆分3 > 2 > 1,先尽可能拆分成3,到4拆分成2、3以下返回n-1

class Solution:
    def cutRope(self , numbers: int) -> int:
        # write code here
        
        if numbers <= 3:
            return numbers - 1
        
        res = 1
        while numbers > 4:
            numbers -= 3
            res *= 3
        
        return numbers * res
全部评论

相关推荐

04-02 16:49
门头沟学院 Java
_bloodstream_:我也面了科大讯飞,主管面的时候听说急招人优先考虑能尽快实习的,我说忙毕设,后面就一直没消息了
点赞 评论 收藏
分享
评论
5
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务