【题解】AB33 相差不超过k的最多数(排序 + 滑动窗口)

https://www.nowcoder.com/practice/562630ca90ac40ce89443c91060574c6?tpId=308&tqId=40490&ru=/exam/oj

排序 + 滑动窗口

cpp 复制代码
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int main() {
    int n, k;
    cin >> n >> k;
    vector<int> v(n);
    for (int i = 0; i < n; ++i) {
        cin >> v[i];
    }
    sort(v.begin(), v.end());

    // 滑动窗口
    int ret = 0;
    for (int left=0, right=1; right < n; ++right) {
        while(v[right] - v[left] > k) {
            ++left;
        }
        int len = right - left + 1;
        if (ret < len) ret = len;
    }
    cout << ret << endl;

    return 0;
}
相关推荐
二进制person7 小时前
Java EE初阶 --多线程2
java·开发语言
yue0087 小时前
C#理论学习-WinForm实践开发教程总结
开发语言·学习·c#
王哈哈^_^7 小时前
【数据集】【YOLO】目标检测游泳数据集 4481 张,溺水数据集,YOLO河道、海滩游泳识别算法实战训练教程。
人工智能·算法·yolo·目标检测·计算机视觉·分类·视觉检测
巴里巴气7 小时前
第73题 矩阵置零
线性代数·算法·矩阵
007php0077 小时前
某游戏大厂 Java 面试题深度解析(四)
java·开发语言·python·面试·职场和发展·golang·php
Mr.Jessy7 小时前
Web APIs学习第一天:获取 DOM 对象
开发语言·前端·javascript·学习·html
午安~婉7 小时前
javaScript八股问题
开发语言·javascript·原型模式
想不明白的过度思考者8 小时前
Rust——异步递归深度指南:从问题到解决方案
开发语言·后端·rust
voice6708 小时前
密码学实验二
算法·密码学·哈希算法
芝麻开门-新起点8 小时前
flutter 生命周期管理:从 Widget 到 State 的完整解析
开发语言·javascript·ecmascript