笔记 发布 wordpress,seo神器,国外 网站源码,wordpress修改自己的头像前言
经过前期的基础训练以及部分实战练习#xff0c;粗略掌握了各种题型的解题思路。现阶段开始专项练习。
数论包含最大公约数(2个数)、最大公约数性质、最小公倍数、区间范围质因素计数(最下间隔)、质因素分解、判断质数、平方根、立方根、互质、同余等等。
描述 给…前言
经过前期的基础训练以及部分实战练习粗略掌握了各种题型的解题思路。现阶段开始专项练习。
数论包含最大公约数(2个数)、最大公约数性质、最小公倍数、区间范围质因素计数(最下间隔)、质因素分解、判断质数、平方根、立方根、互质、同余等等。
描述 给你一个整数 num请你找出同时满足下面全部要求的两个整数 两数乘积等于 num 1 或 num 2以绝对差进行度量两数大小最接近 你可以按任意顺序返回这两个整数。 示例 1 输入num 8
输出[3,3]
解释对于 num 1 9最接近的两个因数是 3 3对于 num 2 10, 最接近的两个因数是 2 5因此返回 3 3 。示例 2 输入num 123
输出[5,25]示例 3 输入num 999
输出[40,25]提示 1 num 10^9 实现原理与步骤
1.定义题目需要的返回结果数据记录为全局变量。
2.分割num1的因素在[sqrt(num1),1]中分别查找最大的因素剩余的的因素在[sqrt(num1),num1]中则为最小此时两数距离最短。
3.同理再分割num2进行比较。
实现代码
class Solution {int[] resnew int[2];public int[] closestDivisors(int num) {res[0]0;res[1]Integer.MAX_VALUE;divide(num1);divide(num2);return res;}public void divide(int num){for(int i(int)Math.sqrt(num);i0;i--){if(num%i0){if(Math.abs(num/i-i)Math.abs(res[1]-res[0])){res[1]i;res[0]num/i;break;}}}}}
1.QA: