LeetCode_每日一题今日份_410.分割数组的最大值
生活随笔
收集整理的這篇文章主要介紹了
LeetCode_每日一题今日份_410.分割数组的最大值
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
bool check(int* nums, int numsSize, int m, int x) {long long sum = 0; //當前分割子數(shù)組的和int cnt = 1; //已經(jīng)分割出的子數(shù)組的數(shù)量(包括當前子數(shù)組)for (int i = 0; i < numsSize; i++) {if (sum + nums[i] > x) {cnt++;sum = nums[i];} else {sum += nums[i];}}return cnt <= m;
}int splitArray(int* nums, int numsSize, int m) {long long left = 0, right = 0;for (int i = 0; i < numsSize; i++) {right += nums[i];if (left < nums[i]) {left = nums[i];}}while (left < right) {long long mid = (left + right) >> 1;if (check(nums, numsSize, m, mid)) {right = mid;} else {left = mid + 1;}}return left;
}
總結(jié)
以上是生活随笔為你收集整理的LeetCode_每日一题今日份_410.分割数组的最大值的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java实例_综合实践3.K-Means
- 下一篇: LeetCode_每日一题今日份_329