1030 完美数列
易错点
注意范围,int会溢出的话要用long long
代码
#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
long long a[100001];
int main()
{
int n;
long long p;
int max;
int j;
cin>>n>>p;
for(int i=0;i<n;i++){
cin>>a[i];
}
sort(a,a+n);
for(j=0;j<n;j++){
if(a[j]>a[0]*p){
break;
}
}
max=j;
for(int i=0;i<n;i++){
if(i+max>=n){
break;
}
while(a[i+max]<=p*a[i]&&i+max<n){
max++;
}
}
cout<<max;
return 0;
}

浙公网安备 33010602011771号