信息学奥赛一本通(1114:白细胞计数)
1114:白細(xì)胞計(jì)數(shù)
時(shí)間限制: 1000 ms ??? ??? 內(nèi)存限制: 65536 KB
提交數(shù): 42906 ??? 通過數(shù): 14315
【題目描述】
醫(yī)院采樣了某臨床病例治療期間的白細(xì)胞數(shù)量樣本nn份,用于分析某種新抗生素對(duì)該病例的治療效果。為了降低分析誤差,要先從這nn份樣本中去除一個(gè)數(shù)值最大的樣本和一個(gè)數(shù)值最小的樣本,然后將剩余n?2n?2個(gè)有效樣本的平均值作為分析指標(biāo)。同時(shí),為了觀察該抗生素的療效是否穩(wěn)定,還要給出該平均值的誤差,即所有有效樣本(即不包括已扣除的兩個(gè)樣本)與該平均值之差的絕對(duì)值的最大值。
現(xiàn)在請(qǐng)你編寫程序,根據(jù)提供的nn個(gè)樣本值,計(jì)算出該病例的平均白細(xì)胞數(shù)量和對(duì)應(yīng)的誤差。
【輸入】
輸入的第一行是一個(gè)正整數(shù)n(2<n≤300)n(2<n≤300),表明共有nn個(gè)樣本。
以下共有nn行,每行為一個(gè)浮點(diǎn)數(shù),為對(duì)應(yīng)的白細(xì)胞數(shù)量,其單位為109/L109/L。數(shù)與數(shù)之間以一個(gè)空格分開。
【輸出】
輸出為兩個(gè)浮點(diǎn)數(shù),中間以一個(gè)空格分開。分別為平均白細(xì)胞數(shù)量和對(duì)應(yīng)的誤差,單位也是109/L109/L。計(jì)算結(jié)果需保留到小數(shù)點(diǎn)后22位。
【輸入樣例】
5 12.0 13.0 11.0 9.0 10.0【輸出樣例】
11.00 1.00【參考代碼】
#include <stdio.h> #include <math.h> #define N 310 double a[N]; int main() {int i,n,tmax,tmin;double max,min,sum,avg,maxavg;scanf("%d",&n);for(i=0;i<n;i++)scanf("%lf",&a[i]);max=a[0];min=a[0];sum=0;for(i=0;i<n;i++){sum+=a[i];if(a[i]>max){max=a[i];tmax=i;}if(a[i]<min){min=a[i];tmin=i;}}avg=(sum-max-min)/(n-2);for(i=0;i<n;i++){if(i!=tmax && i!=tmin)a[i]=fabs(a[i]-avg);}maxavg=0;for(i=0;i<n;i++){if(i!=tmax && i!=tmin){if(a[i]>maxavg)maxavg=a[i];}}printf("%.2lf %.2lf\n",avg,maxavg);return 0; }http://ybt.ssoier.cn:8088/problem_show.php?pid=1114
總結(jié)
以上是生活随笔為你收集整理的信息学奥赛一本通(1114:白细胞计数)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信息学奥赛一本通(2043:【例5.11
- 下一篇: 信息学奥赛一本通(2025:【例4.11