各位大佬们,本人下午刷5726 打分这道题时,遇到了个大问题,过了第一个样例点,四个WA,请大家帮忙看看问题出在哪,我用的希尔排序,正在考虑换不换归并。
这是代码:
#include<bits/stdc++.h>
using namespace std;
int n;
double fs;
void xrpx(int a[],int b[],int n){
for(int gap=n/2;gap>0;gap/=2){
for(int i=1;i<=n;i++){
int key=a[i];
int j=i;
while(j-gap>=0&&a[j-gap]>=key){
a[j]=a[j-gap];
j-=gap;
}
a[j]=key;
}
}
for(int i=2;i<n;i++){
b[i]=a[i];
}
for(int i=0;i<=n;i++){
fs+=b[i];
}
}
int main(){
cin>>n;
int a[n];
int b[n];
for(int i=0;i<=n;i++){
b[i]=0;
}
for(int i=0;i<n;i++){
cin>>a[i];
}
xrpx(a,b,n);
printf("%.2f\n",fs/(n-2));
return 0;
}
麻烦大家早点给我回复,蟹蟹!!!