CodingTour
ARTS #131

Algorithm

本周选择的算法题是:Partitioning Into Minimum Number Of Deci-Binary Numbers

规则

A decimal number is called deci-binary if each of its digits is either 0 or 1 without any leading zeros. For example, 101 and 1100 are deci-binary, while 112 and 3001 are not.

Given a string n that represents a positive decimal integer, return the minimum number of positive deci-binary numbers needed so that they sum up to n.

Example 1:

Input: n = "32"
Output: 3
Explanation: 10 + 11 + 11 = 32

Example 2:

Input: n = "82734"
Output: 8

Example 3:

Input: n = "27346209830709182346"
Output: 9

Constraints:

  • 1 <= n.length <= 105
  • n consists of only digits.
  • n does not contain any leading zeros and represents a positive integer.

Solution

class Solution:
    def minPartitions(self, n: str) -> int:
        return int(max(n))

Review

Use Your Weekends to Build, Not Escape

  • 除非我们开始行动,否则无法避免失去梦想
  • Progress is evidence. Evidence leads to motivation. Motivation simultaneously produces prioritization.

我喜欢这个 15 分钟的概念,如果不把握现在,总认为未来会有时间,那么就不可能有时间了。

Tip

想不到用不用 Docker 居然还和大仓有关: 为什么 Google 和 Facebook 不用 Docker

Share

重视「重要不紧急的」事情