脑筋急转弯题目,把要达成的数字想象成一个高度为当前位数值的阶梯矩形,你需要用十-二机制数去填充它。那么你每个位只能选择填充0或者1。显然最优选择是再达到矩形高度之前,每次填充均选择\(1\),之后选择\(0\)。最终选择次数取决于最高位的值。
class Solution:def minPartitions(self, n: str) -> int:return int(max(n))
时间复杂度:\(O(n)\)
空间复杂度:\(O(1)\)
脑筋急转弯题目,把要达成的数字想象成一个高度为当前位数值的阶梯矩形,你需要用十-二机制数去填充它。那么你每个位只能选择填充0或者1。显然最优选择是再达到矩形高度之前,每次填充均选择\(1\),之后选择\(0\)。最终选择次数取决于最高位的值。
class Solution:def minPartitions(self, n: str) -> int:return int(max(n))
时间复杂度:\(O(n)\)
空间复杂度:\(O(1)\)