#include<stdio.h>
#include<stdlib.h>
int cmp(void const *x,void const *y)
{
return *((double *)x)-*((double *)y);
}
int main()
{
int n,i,j,result;
double p,*a;
while(~scanf("%d%lf",&n,&p))
{
a=(double *)malloc(n*sizeof(double));
for(i=0;i<n;i++)
scanf("%lf",&a[i]);
qsort(a,n,sizeof(double),cmp);
j=0;
result=1;
for(i=1;i<n;i++)
{
if(a[j]*p<a[i])
{
if(i-j>result) result=i-j;
j++;
}
}
if(a[j]*p>=a[n-1]&&n-j>result) result=n-j;
printf("%d\n",result);
free(a);
}
return 0;
}1030_完美数列(25)
最新推荐文章于 2021-08-24 22:37:14 发布
本文介绍了一个使用C语言实现的排序算法案例,其中包括了自定义比较函数cmp的使用,通过qsort函数对输入的双精度浮点数数组进行排序,并找出满足特定条件的最大子数组长度。该程序利用了标准库函数并展示了基本的数据结构操作。
3586

被折叠的 条评论
为什么被折叠?



