. [Swift] LeetCode1283 that the results do not exceed the threshold minimum divisor | Find the Smallest Divisor Given a Threshold

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤ micro-channel public number: Shan Wing Chi ( let_us_code)
➤ bloggers domain: https://www.zengqiang.org
➤GitHub address: https://github.com/strengthen/LeetCode
➤ original address:
➤ If the address is not a link blog Park Yong Shan Chi, it may be crawling author of the article.
➤ text has been modified update! Click strongly recommended that the original address read! Support authors! Support the original!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

Given an array of integers nums and an integer threshold, we will choose a positive integer divisor and divide all the array by it and sum the result of the division. Find the smallest divisor such that the result mentioned above is less than or equal to threshold.

Each result of division is rounded to the nearest integer greater than or equal to that element. (For example: 7/3 = 3 and 10/2 = 5).

It is guaranteed that there will be an answer.

 

Example 1:

Input: nums = [1,2,5,9], threshold = 6
Output: 5
Explanation: We can get a sum to 17 (1+2+5+9) if the divisor is 1.
If the divisor is 4 we can get a sum to 7 (1+1+2+3) and if the divisor is 5 the sum will be 5 (1+1+1+2).
Example 2:

Input: nums = [2,3,5,7,11], threshold = 11
Output: 3
Example 3:

Input: nums = [19], threshold = 5
Output: 4
 

Constraints:

1 <= nums.length <= 5 * 10^4
1 <= nums[i] <= 10^6
nums.length <= threshold <= 10^6


Nums give you an array of integers and a positive integer threshold, you need to choose a positive integer divisor, then the array each number is divided by it, and the result of the division sums.

You can find out so that the result is less than the threshold value threshold equal to the divisor of the smallest one.

Each number divided by the divisor are rounded up, say 3 = 7/3, 10/2 = 5.

Topic guaranteed solvable.

 

Example 1:

Input: nums = [1,2,5,9], threshold = 6
Output: 5
Explanation: If the divisor is 1, and we can get is 17 (1 + 2 + 5 + 9).
If the divisor is 4, and 7 we get (1 + 1 + 2 + 3). If the divisor is 5, and 5 (1 + 1 + 1 + 2).
Example 2:

Input: nums = [2,3,5,7,11], threshold = 11
Output: 3
Example 3:

Input: nums [19], threshold = 5 =
Output: 4
 

prompt:

1 <= nums.length <= 5 * 10^4
1 <= nums[i] <= 10^6
nums.length <= threshold <= 10^6

Guess you like

Origin www.cnblogs.com/strengthen/p/12151565.html