1317:将整数转换为两个无零整数的和
This commit is contained in:
parent
d136b001b6
commit
58927c1a49
@ -0,0 +1,86 @@
|
||||
//「无零整数」是十进制表示中 不含任何 0 的正整数。
|
||||
//
|
||||
// 给你一个整数 n,请你返回一个 由两个整数组成的列表 [A, B],满足:
|
||||
//
|
||||
//
|
||||
// A 和 B 都是无零整数
|
||||
// A + B = n
|
||||
//
|
||||
//
|
||||
// 题目数据保证至少有一个有效的解决方案。
|
||||
//
|
||||
// 如果存在多个有效解决方案,你可以返回其中任意一个。
|
||||
//
|
||||
//
|
||||
//
|
||||
// 示例 1:
|
||||
//
|
||||
// 输入:n = 2
|
||||
//输出:[1,1]
|
||||
//解释:A = 1, B = 1. A + B = n 并且 A 和 B 的十进制表示形式都不包含任何 0 。
|
||||
//
|
||||
//
|
||||
// 示例 2:
|
||||
//
|
||||
// 输入:n = 11
|
||||
//输出:[2,9]
|
||||
//
|
||||
//
|
||||
// 示例 3:
|
||||
//
|
||||
// 输入:n = 10000
|
||||
//输出:[1,9999]
|
||||
//
|
||||
//
|
||||
// 示例 4:
|
||||
//
|
||||
// 输入:n = 69
|
||||
//输出:[1,68]
|
||||
//
|
||||
//
|
||||
// 示例 5:
|
||||
//
|
||||
// 输入:n = 1010
|
||||
//输出:[11,999]
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
// 提示:
|
||||
//
|
||||
//
|
||||
// 2 <= n <= 10^4
|
||||
//
|
||||
// Related Topics 数学
|
||||
// 👍 19 👎 0
|
||||
|
||||
package leetcode.editor.cn;
|
||||
|
||||
//1317:将整数转换为两个无零整数的和
|
||||
public class ConvertIntegerToTheSumOfTwoNoZeroIntegers {
|
||||
public static void main(String[] args) {
|
||||
//测试代码
|
||||
Solution solution = new ConvertIntegerToTheSumOfTwoNoZeroIntegers().new Solution();
|
||||
System.out.println(solution.getNoZeroIntegers(105));
|
||||
}
|
||||
|
||||
//力扣代码
|
||||
//leetcode submit region begin(Prohibit modification and deletion)
|
||||
class Solution {
|
||||
public int[] getNoZeroIntegers(int n) {
|
||||
int num1 = n < 10 ? 1 : 0;
|
||||
int mul = 1;
|
||||
int temp = n;
|
||||
while (n >= 10) {
|
||||
int delta = n % 10 != 1 ? 1 : 2;
|
||||
num1 += delta * mul;
|
||||
n -= delta;
|
||||
n /= 10;
|
||||
mul *= 10;
|
||||
}
|
||||
return new int[]{num1, temp - num1};
|
||||
}
|
||||
}
|
||||
//leetcode submit region end(Prohibit modification and deletion)
|
||||
|
||||
}
|
@ -0,0 +1,54 @@
|
||||
<p>「无零整数」是十进制表示中 <strong>不含任何 0</strong> 的正整数。</p>
|
||||
|
||||
<p>给你一个整数 <code>n</code>,请你返回一个 <strong>由两个整数组成的列表</strong> <code>[A, B]</code>,满足:</p>
|
||||
|
||||
<ul>
|
||||
<li><code>A</code> 和 <code>B</code> 都是无零整数</li>
|
||||
<li><code>A + B = n</code></li>
|
||||
</ul>
|
||||
|
||||
<p>题目数据保证至少有一个有效的解决方案。</p>
|
||||
|
||||
<p>如果存在多个有效解决方案,你可以返回其中任意一个。</p>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>示例 1:</strong></p>
|
||||
|
||||
<pre><strong>输入:</strong>n = 2
|
||||
<strong>输出:</strong>[1,1]
|
||||
<strong>解释:</strong>A = 1, B = 1. A + B = n 并且 A 和 B 的十进制表示形式都不包含任何 0 。
|
||||
</pre>
|
||||
|
||||
<p><strong>示例 2:</strong></p>
|
||||
|
||||
<pre><strong>输入:</strong>n = 11
|
||||
<strong>输出:</strong>[2,9]
|
||||
</pre>
|
||||
|
||||
<p><strong>示例 3:</strong></p>
|
||||
|
||||
<pre><strong>输入:</strong>n = 10000
|
||||
<strong>输出:</strong>[1,9999]
|
||||
</pre>
|
||||
|
||||
<p><strong>示例 4:</strong></p>
|
||||
|
||||
<pre><strong>输入:</strong>n = 69
|
||||
<strong>输出:</strong>[1,68]
|
||||
</pre>
|
||||
|
||||
<p><strong>示例 5:</strong></p>
|
||||
|
||||
<pre><strong>输入:</strong>n = 1010
|
||||
<strong>输出:</strong>[11,999]
|
||||
</pre>
|
||||
|
||||
<p> </p>
|
||||
|
||||
<p><strong>提示:</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><code>2 <= n <= 10^4</code></li>
|
||||
</ul>
|
||||
<div><div>Related Topics</div><div><li>数学</li></div></div>\n<div><li>👍 19</li><li>👎 0</li></div>
|
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user