1 solutions
-
1
首AC,有点复杂,将就着看吧
#include<bits/stdc++.h> using namespace std; double n,totality=0,average,cmax=0; double a[330]; int findmax(double c[],int n){ double maxn=-1; int ans=0; for(int i=0;i<n;i++){ if(maxn<c[i]){ maxn=c[i]; ans=i; } } return ans; } int findmin(double a[],int n){ double minn=1e9+5; int ans=0; for(int i=0;i<n;i++){ if(minn>a[i]&&a[i]>=0){ minn=a[i]; ans=i; } } return ans; } int main(){ cin>>n; for(int i=0;i<n;i++){ cin>>a[i]; totality+=a[i]; } totality-=a[findmax(a,n)]; totality-=a[findmin(a,n)]; average=totality/(n-2); for(int i=0;i<n;i++){ if(i!=findmax(a,n)&&i!=findmin(a,n))cmax=max(cmax,abs(a[i]-average)); } cout<<fixed<<setprecision(2)<<average<<' '<<cmax; return 0; }
- 1
Information
- ID
- 6939
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- 1
- Tags
- # Submissions
- 1
- Accepted
- 1
- Uploaded By