20230908-考题记录

news/2024/7/8 2:51:39 标签: nginx, 运维
  • 题目描述

给定一个数组nums和窗口大小win,每个win种的最大值为maxNum,最小值为minNum,求出该数组所有窗maxNum和minNum的最大差值。

示例1:

输入:
nums = [2, 3, 5, 7, 6, 8, 1];

win = 3

输出:

7

解析:

第1个长度为3的窗口:[2,3,5]   maxNum = 5, minNum = 2,  5 - 2 = 3,maxDis = 3

第2个长度为3的窗口:[3,5,7]   maxNum = 7, minNum = 3,  7 - 3 = 4 >  maxDis,  maxDis = 4

第3个长度为3的窗口:[5,7,6]   maxNum = 7, minNum = 5,  7 - 5 = 2 <  maxDis,  maxDis = 4

第4个长度为3的窗口:[7,6,8]   maxNum = 8, minNum = 6,  8 - 6 = 2 <  maxDis,  maxDis = 4

第4个长度为3的窗口:[6,8,1]   maxNum = 8, minNum = 1,  8 - 1 = 7 >  maxDis,  maxDis = 7

  • c++代码实现
#include <iostream>
#include <vector>
#include <set>
#include <queue>

using namespace std;

class Solution {
public:
    int slove(vector<int> nums, int win) {
        int ans = INT32_MIN;
        queue<int> wins;
        set<int> data;
        for (int i = 0; i < nums.size(); ++i) {
            if (i < win) {
                wins.push(nums[i]);
                data.insert(nums[i]);
                continue;
            } else {
                data.erase(wins.front());
                data.insert(nums[i]);
                wins.pop();
                wins.push(nums[i]);
            }

            ans = max(ans, *data.rbegin() - *data.begin());
        }

        return ans;
    }
};


int main() {
    vector<int> nums = {2, 3, 5, 7, 6, 8, 1};
    int win = 3;
    Solution so;
    cout << so.slove(nums, win);

    return 0;
}
  • 运行结果如下:


http://www.niftyadmin.cn/n/5012251.html

相关文章

【Python 自动化】小说推文一键生成思路概述

最近看了一下小说推文成品软件的思路&#xff0c;发现可以完全迁移到我的 BookerAutoVideo 上面来。这篇短文里面&#xff0c;我试着分析一下整个推文视频生成的流程&#xff0c;以及简要阐述一下有什么工具。 整体流程是这样&#xff1a; 分句 原文是按照段落组织的&#xf…

SQL Server 跨库/服务器查询

这里写目录标题 1 SQL Server 跨库/服务器查询1.1 跨库查询1.2 跨服务器查询1.2.1 创建链接服务器1.2.2 跨库查询 1.3 拓展&#xff1a;SQL Server 中所有权和用户与架构的分离 1 SQL Server 跨库/服务器查询 1.1 跨库查询 在同一服务器下的跨库查询较为简单&#xff0c;示例…

YOLO总结,从YOLOv1到YOLOv3

YOLOv1 论文链接&#xff1a;https://arxiv.org/abs/1506.02640 检测原理 将检测问题转换成回归问题&#xff0c;一个CNN就搞定。即得到一个框的中心坐标(x, y)和宽高w&#xff0c;h&#xff0c;然后作回归任务。 B是两个框&#xff0c;5是指参数量&#xff0c;x y w h是确定…

java封装国密SM4为 jar包,PHP调用

java封装国密SM4为 jar包,PHP调用 创建java工程引入SM4 jar包封装CMD可调用jar包PHP 传参调用刚用java弄了个class给php调用,本以为项目上用到java封装功能的事情就结束了,没想到又来了java的加密需求,这玩意上头,毕竟不是强项,没办法,只好再次封装。 但是这次的有点不…

OpenCV 04(通道分离与合并 | 绘制图形)

一、通道的分离与合并 - split(mat)分割图像的通道 - merge((ch1,ch2, ch3)) 融合多个通道 import cv2 import numpy as npimg np.zeros((480, 640, 3), np.uint8)b,g,r cv2.split(img)b[10:100, 10:100] 255 g[10:100, 10:100] 255img2 cv2.merge((b, g, r))cv2.imshow…

Eviews用向量自回归模型VAR实证分析公路交通通车里程与经济发展GDP协整关系时间序列数据和脉冲响应可视化...

全文下载链接&#xff1a;http://tecdat.cn/?p27784 河源市是国务院1988年1月7日批准设立的地级市&#xff0c;为了深入研究河源市公路交通与经济发展的关系&#xff0c;本文选取了1988&#xff0d;2014年河源市建市以来24年的地区生产总值&#xff08;GDP&#xff09;和公路通…

Ubuntu16.04安装网卡驱动

1. 根据电脑网卡型号&#xff0c;查找对应的驱动。 2. 若是在Linux中安装驱动&#xff0c;要注意内核版本 3. 具体操作参考Ubuntu 16.04 手动安装无线网卡驱动&#xff08;连接WiFi&#xff09;

echarts饼图label自定义样式

生成的options {"tooltip": {"trigger": "item","axisPointer": {"type": "shadow"},"backgroundColor": "rgba(9, 24, 48, 0.5)","borderColor": "rgba(255,255,255,0.4)&q…