题解 | #争夺前五名#
争夺前五名
https://www.nowcoder.com/practice/cd052308a1c44a88ad00255f312c3e14
#include <algorithm>
#include <iostream>
using namespace std;
int main() {
    int n,x;
    cin>>n;
    int a[n+2];
    int j=1;
    while(cin>>x){
        a[j++]=x;
    }
    int z;
    
    // sort(a, a+n);
    // for(int j=n-1;j>=n-5;j--){
    //     cout<<a[j]<<" ";
    // }
    // return 0;
    //直接插入排序
    for(int i=2;i<=n;i++){
        if(a[i]>a[i-1]){
            a[0]=a[i];
            for(z=i-1;a[z]<a[0];z--){
                a[z+1]=a[z];
            }
            a[z+1]=a[0];
        }               
    }
    for(int i=1;i<=5;i++){
        cout<<a[i]<<" ";
    }
    cout<<endl;
    return 0;
}
// 64 位输出请用 printf("%lld")
 查看3道真题和解析
查看3道真题和解析
