2427:公因子的数目

This commit is contained in:
轩辕龙儿 2023-04-05 12:06:21 +08:00
parent af0c428a9a
commit 1ba2367740
2 changed files with 90 additions and 0 deletions

View File

@ -0,0 +1,62 @@
////给你两个正整数 a b 返回 a b 因子的数目
//
// 如果 x 可以同时整除 a b 则认为 x a b 的一个 公因子
//
//
//
// 示例 1
//
// 输入a = 12, b = 6
//输出4
//解释12 6 的公因子是 1236
//
//
// 示例 2
//
// 输入a = 25, b = 30
//输出2
//解释25 30 的公因子是 15
//
//
//
// 提示
//
//
// 1 <= a, b <= 1000
//
//
// Related Topics 数学 枚举 数论 👍 28 👎 0
package leetcode.editor.cn;
// 2427:公因子的数目
public class NumberOfCommonFactors {
public static void main(String[] args) {
Solution solution = new NumberOfCommonFactors().new Solution();
}
//leetcode submit region begin(Prohibit modification and deletion)
class Solution {
public int commonFactors(int a, int b) {
int cnt = 0;
while (a != b) {
int sub = Math.abs(a - b);
a = Math.min(a, b);
b = sub;
}
for (int i = 1; i * i <= a; i++) {
if (a % i == 0) {
if (a / i == i) {
cnt++;
} else {
cnt += 2;
}
}
}
return cnt;
}
}
//leetcode submit region end(Prohibit modification and deletion)
}

View File

@ -0,0 +1,28 @@
<p>给你两个正整数 <code>a</code><code>b</code> ,返回 <code>a</code><code>b</code><strong></strong> 因子的数目。</p>
<p>如果 <code>x</code> 可以同时整除 <code>a</code><code>b</code> ,则认为 <code>x</code><code>a</code><code>b</code> 的一个 <strong>公因子</strong></p>
<p>&nbsp;</p>
<p><strong>示例 1</strong></p>
<pre><strong>输入:</strong>a = 12, b = 6
<strong>输出:</strong>4
<strong>解释:</strong>12 和 6 的公因子是 1、2、3、6 。
</pre>
<p><strong>示例 2</strong></p>
<pre><strong>输入:</strong>a = 25, b = 30
<strong>输出:</strong>2
<strong>解释:</strong>25 和 30 的公因子是 1、5 。</pre>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li><code>1 &lt;= a, b &lt;= 1000</code></li>
</ul>
<div><div>Related Topics</div><div><li>数学</li><li>枚举</li><li>数论</li></div></div><br><div><li>👍 28</li><li>👎 0</li></div>