滑动窗口问题

最长含有不小于x的子数组

cs 复制代码
#include <stdio.h>

int main() {
    int n;
    long long x, k;  // x 和 k 可能很大,用 long long
    scanf("%d %lld %lld", &n, &x, &k);

    long long a[100005];  // 根据数据规模 n <= 10^5
    for (int i = 0; i < n; i++) {
        scanf("%lld", &a[i]);
    }

    int left = 0;
    int count = 0;  // 当前窗口内 >= x 的元素个数
    int max_len = -1;

    for (int right = 0; right < n; right++) {
        // 扩展右边界
        if (a[right] >= x) {
            count++;
        }

        // 如果当前窗口内有效元素个数超过了 k,收缩左边界
        while (count > k) {
            if (a[left] >= x) {
                count--;
            }
            left++;
        }

        // 如果当前窗口内有效元素个数正好是 k,更新最大长度
        if (count == k) {
            int current_len = right - left + 1;
            if (current_len > max_len) {
                max_len = current_len;
            }
        }
    }

    printf("%d\n", max_len);
    return 0;
}
相关推荐
爱刷碗的苏泓舒3 小时前
PPP-AR 中的参考星选取:数学原理、评价指标与切换处理
算法·gnss·模糊度固定·ppp-ar·星间单差·参考星·卫星端偏差
烬羽6 小时前
递归老写崩?一个"退回"公式,把回溯题变成填空题
javascript·深度学习·算法
闪电悠米6 小时前
力扣hot100-41.缺失的第一个正数-原地哈希详解
数据结构·算法·哈希算法
WL学习笔记6 小时前
堆(数据结构)
数据结构·
星空露珠7 小时前
28种颜色对应名称,
开发语言·数据库·算法·游戏·lua
QXWZ_IA8 小时前
桥梁数字孪生怎么落地?
人工智能·科技·算法·智能硬件·政务
Kel8 小时前
输出层与反分词(Output Layer & Detokenization)
人工智能·算法·架构
陕西企来客8 小时前
2026年7月技术好GEO优化方案:算法适配与内容策略
人工智能·算法·机器学习·技术好geo优化
风栖柳白杨9 小时前
【面试】AI算法工程师_空白自测版本
人工智能·算法·面试
闪电悠米10 小时前
力扣hot100-73.矩阵置零-标记数组详解
算法·leetcode·矩阵