#include <iostream>
#include <cstdio>
#include <algorithm>
#include <string.h>
#include <cmath>

using namespace std;
const int maxn=100000+5;
long long a[maxn];
int main()
{
    int n,p;
    scanf("%d %d",&n,&p);
    int minidx=0;
    for(int i=0;i<n;i++){
        scanf("%lld",&a[i]);
    }
    sort(a,a+n);
    int cnt=0,maxlen=0;
    for(int i=0;i<n;i++){
        if(a[i]<=a[minidx]*p){
            cnt++;
        }
        else{
            if(cnt>maxlen)
                maxlen=cnt;
            minidx++;
            cnt--;
            i--;
        }
    }
    //最后不要忘了还要判断下。。。
    if(cnt>maxlen)
        maxlen=cnt;
    printf("%d\n",maxlen);
    return 0;
}
View Code

相关文章:

  • 2022-12-23
  • 2021-12-10
  • 2022-12-23
  • 2021-08-05
  • 2021-08-15
  • 2021-07-22
  • 2022-12-23
猜你喜欢
  • 2021-06-14
  • 2021-05-07
  • 2021-09-19
  • 2022-12-23
  • 2021-10-20
  • 2022-12-23
相关资源
相似解决方案