【题解】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;
}
相关推荐
电子_咸鱼25 分钟前
动态规划经典题解:单词拆分(LeetCode 139)
java·数据结构·python·算法·leetcode·线性回归·动态规划
青衫码上行30 分钟前
【Java Web学习 | 第七篇】JavaScript(1) 基础知识1
java·开发语言·前端·javascript·学习
星释35 分钟前
Rust 练习册 10:多线程基础与并发安全
开发语言·后端·rust
yunhuibin1 小时前
无锁化编程——c++内存序使用
c++
披着羊皮不是狼2 小时前
多用户博客系统搭建(1):表设计+登录注册接口
java·开发语言·springboot
zzzyyy5384 小时前
C++之vector容器
开发语言·c++
小安同学iter5 小时前
SQL50+Hot100系列(11.9)
算法·leetcode·职场和发展
uotqwkn89469s5 小时前
如果Visual Studio不支持C++14,应该如何解决?
c++·ide·visual studio
炼金士5 小时前
基于多智能体技术的码头车辆最快行驶路径方案重构
算法·路径规划·集装箱码头
xunyan62346 小时前
面向对象(上)-封装性的引入
java·开发语言