Description
https://leetcode.com/problems/convert-integer-to-the-sum-of-two-no-zero-integers/
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
andB
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]
Constraints:
2 <= n <= 10^4
Explanation
Return a pair of two numbers where their sum equal to n. While either one of these two numbers contains ‘0’, try with another pair of two numbers.
Python Solution
class Solution:
def getNoZeroIntegers(self, n: int) -> List[int]:
left = 1
right = n - 1
while str(left).count('0') > 0 or str(right).count('0') > 0:
left = left + 1
right = right - 1
return [left, right]
- Time Complexity: O(N).
- Space Complexity: O(1).