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

#include <leetcode.h>

静态 Public 成员函数

static int maximumTop (vector< int > &nums, int k)
 

详细描述

在文件 leetcode.h1706 行定义.

成员函数说明

◆ maximumTop()

int leetcode::maximize_the_topmost_element_after_k_moves::Solution::maximumTop ( vector< int > &  nums,
int  k 
)
static

在文件 leetcode.cpp4371 行定义.

4371 {
4372 if(nums.size() == 1 && k % 2 == 1) {
4373 return -1;
4374 }
4375 if(k > nums.size()) {
4376 int ans = -1;
4377 for(auto num: nums) {
4378 ans = max(ans, num);
4379 }
4380 return ans;
4381 }
4382 unordered_map<int, int> element_count;
4383 set<int> poped_elements;
4384 for(auto num: nums) {
4385 element_count[num]++;
4386 }
4387 for(int i = 0; i < nums.size() && i < k - 1; i++) {
4388 poped_elements.insert(nums[i]);
4389 element_count[nums[i]]--;
4390 }
4391 int ans = -1;
4392 if(k < nums.size()) {
4393 ans = nums[k];
4394 }
4395 int maximum = -1;
4396 for(const auto i = poped_elements.rbegin(); i != poped_elements.rend();) {
4397 maximum = *i;
4398 break;
4399 }
4400 return max(ans, maximum);
4401 }

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


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