#include <stdio.h>
#include <stdlib.h>

//通过库函数完成排序

int cmp_int(const void* e1, const void* e2)
{
    //降序排列
    return *(int*)e2 - *(int*)e1;
}

int main()
{
    int arr[40] = {0}; // 存放学生成绩
    int n = 0; // n个学生
    //输入
    scanf("%d", &n);
    for (int i = 0; i < n; i++)
    {
        scanf("%d", &arr[i]);
    }
    //排序
    qsort(arr, n, 4, cmp_int);
    //输出
    for (int i = 0; i < 5; i++)
    {
        printf("%d ", arr[i]);
    }

    return 0;
}

//通过冒泡排序完成

/*void bubble_sort(int arr[40], int n)
{
    //确定趟数
    for (int i = 0; i < n; i++)
    {
        //每趟的次数
        for (int j = 0; j < n - 1 - i; j++)
        {
            //降序
            if (arr[j] < arr[j + 1])
            {
                //交换
                int tmp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = tmp;
            }
        }
    }
}

int main()
{
    int n = 0; // 表示n个学生
    int arr[40] = {0}; // 存放成绩
    //输入
    scanf("%d", &n);
    for (int i = 0; i < n; i++)
    {
        scanf("%d", &arr[i]);
    }

    //排序
    //冒泡排序
    bubble_sort(arr, n);

    //输出
    for (int i = 0; i < 5; i++)
    {
        printf("%d ", arr[i]);
    }
    printf("\n");


    return 0;
}

*/