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

#include <leetcode.h>

静态 Public 成员函数

static vector< int > goodDaysToRobBank (vector< int > &security, int time)
 

详细描述

在文件 leetcode.h1564 行定义.

成员函数说明

◆ goodDaysToRobBank()

vector< int > leetcode::find_good_days_to_rob_the_bank::Solution::goodDaysToRobBank ( vector< int > &  security,
int  time 
)
static

在文件 leetcode.cpp4011 行定义.

4011 {
4012 if(security.size() < 2 * time + 1) {
4013 return {};
4014 }
4015 vector<int> ans;
4016 if(time == 0) {
4017 for(int i = 0; i < security.size(); i++) {
4018 ans.push_back(i);
4019 }
4020 return ans;
4021 }
4022 vector non_increasing(security.size(), 0);
4023 vector non_decreasing(security.size(), 0);
4024 for(int i = 1; i < security.size(); i++) {
4025 if(security[i] >= security[i - 1]) {
4026 non_decreasing[i] = non_decreasing[i - 1] + 1;
4027 } else {
4028 non_decreasing[i] = 0;
4029 }
4030 if(security[i] <= security[i - 1]) {
4031 non_increasing[i] = non_increasing[i - 1] + 1;
4032 } else {
4033 non_increasing[i] = 0;
4034 }
4035 }
4036 for(int i = time; i + time < security.size(); i++) {
4037 if(non_decreasing[i + time] >= time && non_increasing[i] >= time) {
4038 ans.push_back(i);
4039 }
4040 }
4041 return ans;
4042 }

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


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