problemscpp
A collection of my answers to algorithm problems in c++.
静态 Public 成员函数 | 所有成员列表
leetcode::split_array_largest_sum::Solution类 参考

#include <leetcode.h>

静态 Public 成员函数

static int get_m (const vector< int > &nums, int msum)
 
static int splitArray (vector< int > &nums, int m)
 

详细描述

在文件 leetcode.h3066 行定义.

成员函数说明

◆ get_m()

int leetcode::split_array_largest_sum::Solution::get_m ( const vector< int > &  nums,
int  msum 
)
static

在文件 leetcode.cpp8686 行定义.

8686 {
8687 int ans = 0;
8688 int c = 0;
8689 for(const auto num: nums) {
8690 if(c + num > msum) {
8691 ans++;
8692 c = 0;
8693 }
8694 c += num;
8695 }
8696 if(c > 0) {
8697 ans++;
8698 }
8699 return ans;
8700 }

被这些函数引用 splitArray().

◆ splitArray()

int leetcode::split_array_largest_sum::Solution::splitArray ( vector< int > &  nums,
int  m 
)
static

在文件 leetcode.cpp8665 行定义.

8665 {
8666 int l = 0;
8667 int r = 0;
8668 for(auto num: nums) {
8669 r += num;
8670 l = max(l, num);
8671 }
8672 while(l < r) {
8673 const int mid = (l + r) / 2;
8674 const int cnt = get_m(nums, mid);
8675 if(cnt == m) {
8676 r = mid;
8677 } else if(cnt > m) {
8678 l = mid + 1;
8679 } else if(cnt < m) {
8680 r = mid - 1;
8681 }
8682 }
8683 return l;
8684 }
static int get_m(const vector< int > &nums, int msum)
Definition: leetcode.cpp:8686

引用了 get_m().

被这些函数引用 leetcode::split_array_largest_sum::TEST().


该类的文档由以下文件生成: