# 1317. Convert Integer to the Sum of Two No-Zero Integers

## Description

No-Zero integer is a positive integer that does not contain any 0 in its decimal representation.

Given an integer n, return a list of two integers [a, b] where:

• a and b are No-Zero integers.
• a + b = n

The test cases are generated so 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: Let a = 1 and b = 1.
Both a and b are no-zero integers, and a + b = 2 = n.


Example 2:

Input: n = 11
Output: [2,9]
Explanation: Let a = 2 and b = 9.
Both a and b are no-zero integers, and a + b = 9 = n.
Note that there are other valid answers as [8, 3] that can be accepted.


Constraints:

• 2 <= n <= 104

## Solutions

• class Solution {
public int[] getNoZeroIntegers(int n) {
for (int a = 1;; ++a) {
int b = n - a;
if (!(a + "" + b).contains("0")) {
return new int[] {a, b};
}
}
}
}

• class Solution {
public:
vector<int> getNoZeroIntegers(int n) {
for (int a = 1;; ++a) {
int b = n - a;
if ((to_string(a) + to_string(b)).find('0') == -1) {
return {a, b};
}
}
}
};

• class Solution:
def getNoZeroIntegers(self, n: int) -> List[int]:
for a in range(1, n):
b = n - a
if "0" not in str(a) + str(b):
return [a, b]


• func getNoZeroIntegers(n int) []int {
for a := 1; ; a++ {
b := n - a
if !strings.Contains(strconv.Itoa(a)+strconv.Itoa(b), "0") {
return []int{a, b}
}
}
}

• function getNoZeroIntegers(n: number): number[] {
for (let a = 1; ; ++a) {
const b = n - a;
if (!${a}${b}.includes('0')) {
return [a, b];
}
}
}