leetcode 1317. Convert Integer to the Sum of Two No-Zero Integers (python)

385 阅读1分钟

描述

Given an integer n. No-Zero integer is a positive integer which doesn't contain any 0 in its decimal representation.

Return a list of two integers [A, B] where:

  • A and B are No-Zero integers.
  • A + B = n

It's guarateed that there is at least one valid solution. If there are many valid solutions you can return any of them.

Example 1:

Input: n = 2
Output: [1,1]
Explanation: A = 1, B = 1. A + B = n and both A and B don't contain any 0 in their decimal representation.	

Example 2:

Input: n = 11
Output: [2,9]

Example 3:

Input: n = 10000
Output: [1,9999]

Example 4:

Input: n = 69
Output: [1,68]

Example 5:

Input: n = 1010
Output: [11,999]

Note:

2 <= n <= 10^4

解析

根据题意,就是找出任意两个数字相加为 n ,但是两个数字中不能包含 0 。思路就是这样,直接从 1 开始循环,判断是否满足条件,如果满足直接返回。

解答

class Solution(object):
    def getNoZeroIntegers(self, n):
        """
        :type n: int
        :rtype: List[int]
        """
        for i in range(1, n):
            if '0' not in str(i) and '0' not in str(n-i):
                return [i, n - i]
        	      
		

运行结果

Runtime: 36 ms, faster than 21.54% of Python online submissions for Convert Integer to the Sum of Two No-Zero Integers.
Memory Usage: 13.9 MB, less than 7.69% of Python online submissions for Convert Integer to the Sum of Two No-Zero Integers.

原题链接:leetcode.com/problems/co…

您的支持是我最大的动力