首页 > 试题广场 >

相差不超过k的最多数

[编程题]相差不超过k的最多数
  • 热度指数:8537 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
给定一个数组,选择一些数,要求选择的数中任意两数差的绝对值不超过 k 。问最多能选择多少个数?

输入描述:
第一行输入两个正整数 nk
第二行输入 n 个正整数a_i,用空格隔开,表示这个数组。


输出描述:
一个正整数,代表能选的最多数量。
数据范围:

示例1

输入

5 3
2 1 5 3 2

输出

4

说明

显然,1和5不能同时选。所以最多只能选4个数。
头像 starry陆离
发表于 2022-08-24 22:17:13
👨‍🎓作者简介:一位喜欢写作,计科专业大二菜鸟🏡个人主页:starry陆离 🍁每日推荐:牛客网-面试神器 『牛客|每日一题』相差不超过k的最多数 1.每日一题 原题链接——》戳我戳我:传送法阵 2.测试案例 5 3 2 1 5 3 2 4 说明: 显然,1和5不能同时选。所以最多只能选4 展开全文
头像 万卡you
发表于 2022-11-10 19:25:16
#include<iostream> #include<algorithm> using namespace std; int main(){ int n,k; cin>>n>>k; int a[ 展开全文
头像 小菲柱
发表于 2022-04-19 12:48:01
#include <iostream> #include <algorithm> #include <vector> int main(int argc, char *argv[]) { int count, dist; std::vector<i 展开全文
头像 1eHz
发表于 2024-10-26 00:02:59
关键词:双指针 / 滑动窗口核心思想:使用滑动窗口算法通过动态调整窗口的大小,遍历所有符合条件的连续子序列,求得最大连续子序列的长度。解题步骤:排序:首先对数组进行排序,以方便后续检查相邻元素之间的差值是否满足条件。滑动窗口:使用滑动窗口技术来找到满足条件的最长子序列。这里使用两个指针 l(左指针) 展开全文
头像 lee23333
发表于 2022-05-23 20:17:25
import java.util.*; public class Main {     public static void main(String[] args) { 展开全文
头像 东北大学小白
发表于 2023-08-16 21:37:54
#include <iostream> using namespace std; #include <vector> #include <algorithm> int main() { int n, k; while (cin >> 展开全文
头像 燕草如碧
发表于 2022-08-02 21:45:49
n,k = map(int,input().split()) lis = list(map(int,input().split())) list.sort(lis) left = 0#左指针 right = 0#右指针 展开全文
头像 燕草如碧
发表于 2022-08-02 21:45:50
n,k = map(int,input().split()) lis = list(map(int,input().split())) list.sort(lis) left = 0#左指针 right = 0#右指针 展开全文
头像 蚂蚁go
发表于 2024-03-10 19:38:11
#include <bits/stdc++.h> using namespace std; vector<long long> a; long long n,k; bool find(long long l,long long r) { if(abs(a[l]-a[ 展开全文
头像 害怕一个人的懒羊羊愿offer多多
发表于 2024-05-09 18:01:34
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.StreamTokenizer; import java.util.Arrays; 展开全文