剑指offer[编程题]剪绳子
剪绳子
http://www.nowcoder.com/questionTerminal/57d85990ba5b440ab888fc72b0751bf8
题目提示考点是贪心算法
但还是尝试找规律,看能不能用数学来解题,结果成功
简单汇总了一下公式,用列表代替if判断,2和3懒得优化公式,所以单独拎出来用if了
编程语言:python
# -*- coding:utf-8 -*- class Solution: def cutRope(self, number): if number == 2: return 1 if number == 3: return 2 z = [3, 4, 6] y = number % 3 return 3**(int(number / 3)-1)*z[y]