1362 最接近的因數(數學)

2021-10-06 19:03:04 字數 711 閱讀 7495

1. 問題描述:

給你乙個整數 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:2. 思路分析:

最容易想到的是暴力破解,我們可以在迴圈中列舉出num + 1與num+ 2的所有正整數的乘積找出絕對值之差最小的兩個數字即可,但是在num比較大的時候就會耗時特別大,所以提交上去是超時的,第二種方法是在領扣的題解中看到的,從num的平方根往左邊開始尋找,最先找到的是那麼絕對值之差肯定是最小的

3. **如下:

class solution 

private int getclosestdivisors(int num) else --n;}}

}

最接近的數

有乙個正整數,請找出其二進位制表示中1的個數相同 且大小最接近的那兩個數。乙個略大,乙個略小 給定正整數int x,請返回乙個vector,代表所求的兩個數 小的在前 保證答案存在。測試樣例 2 返回 1,4 思路 以給出的數為基礎,先將給出的數的二進位制中有幾個1判斷出來,然後再分別判別當前數左邊...

最接近的分數

description 給出乙個正實數,找出分子與分母均不超過n的最簡分數,使其最接近給出的實數。最接近 是指在數軸上該分數距離給出的小數最近,如果這個分數不惟一,輸出分子最小的乙個。input 輸入共二行 第一行只有乙個正整數 n n n第二行只有乙個正實數 x x xoutput 輸出共二行 第...

數字的最接近查詢

提出問題,有乙個數字列value,任意輸入乙個數字x,要求查詢最接近x的那個value的值,有可能個大於x也有可能小於x。例如查詢value最接近2.15的value所在的行 實現 create table t value decimal 12,4 insert into t select 2.1 ...