【题解】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;
}
相关推荐
曙曙学编程8 分钟前
stm32——GPIO
c语言·c++·stm32·单片机·嵌入式硬件
你知道网上冲浪吗16 分钟前
【原创理论】Stochastic Coupled Dyadic System (SCDS):一个用于两性关系动力学建模的随机耦合系统框架
python·算法·数学建模·数值分析
△曉風殘月〆28 分钟前
Visual Studio中的常用调试功能(下)
c++·ide·visual studio·调试
武当豆豆36 分钟前
C++编程学习(第25天)
开发语言·c++·学习
地平线开发者2 小时前
征程 6 | PTQ 精度调优辅助代码,总有你用得上的
算法·自动驾驶
Tisfy2 小时前
LeetCode 837.新 21 点:动态规划+滑动窗口
数学·算法·leetcode·动态规划·dp·滑动窗口·概率
-Xie-2 小时前
Maven(二)
java·开发语言·maven
mftang2 小时前
Python可视化工具-Bokeh:动态显示数据
开发语言·python
m0_480502642 小时前
Rust 入门 生命周期-next2 (十九)
开发语言·后端·rust
IT利刃出鞘2 小时前
Java线程的6种状态和JVM状态打印
java·开发语言·jvm