首页 > 代码库 > 小Q系列之 最佳裁判
小Q系列之 最佳裁判
这个题需要注意一些数据条件
尤其是一些输入数据条件
#include<algorithm> #include<stdio.h> #include<math.h> using namespace std; int main() { int n,m,i; float b[21],a[21]; double s,k; m=21; while(scanf("%d",&n)) { if(n==0||n<5)//就这个条件特别坑 想了好久都没想到还要注意这个条件。 break; s=0; for(i=0;i<n;i++) { scanf("%f",&b[i]);
a[i]=b[i];//先把数字和序号存起来,为了以后不乱序号。 } sort(b,b+n);//排序。 for(i=1;i<n-1;i++) { s=b[i]+s; }s=s/(n-2);//去掉最大 和最小 求和 求平均数 for(i=0;i<n;i++) { b[i]=fabs(b[i]-s); } k=b[1]; for(i=1;i<n-1;i++) { if(b[i]<k) { k=b[i];//挨个减去平均值 求最小的绝对值。 } } for(i=0;i<n;i++) { a[i]=fabs(a[i]-s);用原来的序号依次减去平均值,, if(a[i]==k)与最小的相比,等于最小后 输出序号。 { printf("%d\n",i+1); break; } } } }
小Q系列之 最佳裁判
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。