写这个代码的时候很是纠结~因为之前做过,虽然没有做对,但是这次做题的时候明显的感觉漏洞百出~~不知道什么原因 我还是没有入门吧
#include<stdio.h>
#include<stdlib.h>#include<math.h>#define M 650int cmp(const void *a,const void *b){ return *(double *)a < *(double *)b ;}int main(){ int m,n,w=2,l=20,i;double a[M],sum=0;scanf("%d",&m);while(m--) { sum=0; scanf("%d",&n); for(i=0;i<n;i++) scanf("%lf",&a[i]); qsort(a,n,sizeof(a[0]),cmp);//使用函数的时候别忘了头文件 // for(i=0;i<n;i++) // printf("%lf ",a)[i]; for(i=0;i<n;i++) { sum=sum+2*sqrt(a[i]*a[i]-1); // printf("%lf ",sum); if(a[i]<1||sum>20) break; } printf("%d\n",i+1); } return 0;}