刚入门,高手门怎么做到时间那么短的。
查看原帖
刚入门,高手门怎么做到时间那么短的。
375727
hzyhyou楼主2020/9/10 15:27
#include <stdio.h>
#include <stdlib.h>
//#include <iostream>

//using namespace std;

int n;
int b[11];
int c[11]={};

double ans=0;

int main()
{
    int t=0,first=0;
    int m;
    scanf ("%d",&n);
    
    for (int i=0; i<=10; i++)
        b[i]=10001;
    
    
    for ( int i = 1; i <= n; i++)
    {
        scanf ("%d",&m);
        if (c[m]==0)
              {
               c[m]=1;
                b[m]=0;
                }
        if (c[m]==1)
        b[m]++;
    }
    
    for ( int i=0; i<=10; i++)
    {
        if (b[i]!=10001&&first==0)
        {
            first=1;
            b[i]=b[i]-1;
            break;
            
        }
   
    }
    
    first=0;
    
    for ( int i=10; i>=0; i--)
    {
        if (b[i]!=10001&&first==0)
        {
            first=1;
            b[i]=b[i]-1;
            break;
            
        }
        
    }
    
    
    for (int i=0; i<=10; i++)
    {
        if(b[i]!=10001)  t=t+i*b[i];
    }

    
    ans=t*1.00/(n-2);
    printf("%.2lf",ans);
    return 0;
}

2020/9/10 15:27
加载中...