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

#include <leetcode.h>

静态 Public 成员函数

static int cntMinFlip (vector< int > &nums, int len)
 
static int longestOnes (vector< int > &nums, int k)
 

详细描述

在文件 leetcode.h2820 行定义.

成员函数说明

◆ cntMinFlip()

int leetcode::max_consecutive_ones_iii::Solution::cntMinFlip ( vector< int > &  nums,
int  len 
)
static

在文件 leetcode.cpp7785 行定义.

7785 {
7786 if(len == 0) {
7787 return 0;
7788 }
7789 int current = 0;
7790 for(int i = 0; i < len; i++) {
7791 if(nums[i] == 0) {
7792 current++;
7793 }
7794 }
7795 int ans = current;
7796 for(int i = 0, j = len; j < nums.size(); i++, j++) {
7797 if(nums[i] == 0) {
7798 current--;
7799 }
7800 if(nums[j] == 0) {
7801 current++;
7802 }
7803 ans = min(ans, current);
7804 }
7805 return ans;
7806 }

被这些函数引用 longestOnes().

◆ longestOnes()

int leetcode::max_consecutive_ones_iii::Solution::longestOnes ( vector< int > &  nums,
int  k 
)
static

在文件 leetcode.cpp7770 行定义.

7770 {
7771 int l = 0;
7772 int r = nums.size();
7773 while(l < r) {
7774 const int mid = (l + r) / 2 + 1;
7775 const int res = cntMinFlip(nums, mid);
7776 if(res > k) {
7777 r = mid - 1;
7778 } else {
7779 l = mid;
7780 }
7781 }
7782 return l;
7783 }
static int cntMinFlip(vector< int > &nums, int len)
Definition: leetcode.cpp:7785

引用了 cntMinFlip().

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


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