1085. Perfect Sequence (25)-水题

#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

 

posted @ 2017-02-11 12:05  辰曦~文若  阅读(203)  评论(0编辑  收藏  举报