#include<bits/stdc++.h>
#include<iostream>
using namespace std;
int a[100005];
int main()
{
int n;
cin>>n;
for( int i=0;i<n;i++)
cin>>a[i];
int max,min;
double mid;
for( int i=0;i<n;i++)
{
if(a[i]==a[i+1])
continue;
else if(a[i]<a[i+1])
{
max=a[n-1];
min=a[0];
break;
}
else if(a[i]>a[i+1])
{
min=a[n-1];
max=a[0];
break;
}
}
if(n%2==0)
{
if( (a[n/2-1]+ a[n/2] )%2==0)
{
mid=(a[n/2-1]+ a[n/2] )/2.0;
printf( "%d %.0lf %d" ,max,mid,min);
}
else
{
mid= (( double)a[n/2-1]+( double)a[n/2])/2.0;//少考虑了关于n为偶数,中位数为整数的情况,所以会只有70分
printf( "%d %.1lf %d" ,max,mid,min);
}
}
else
{
mid=( double)a[(n-1)/2];
printf( "%d %.0lf %d" ,max,mid,min);
}
return 0;
}
20是因为没有完全格式化输出,漏了个啥
70是少考虑了关于n为偶数,中位数为整数的情况,所以会只有70分
编译出错是double类型不能取模