#include <bits/stdc++.h>
#define ll long long
#define F first
#define S second
#define pii pair <int, int>
#define ld long double
#define ins insert
#define pb push_back
using namespace std;

const int N = 2e5 + 5;
const ll inf = 1e13;

std::vector<int> solve(std::vector<int> A)
{
    int n = A.size(), s = 0;
    for (auto to: A) s += to;
    sort(A.begin(), A.end());
    int s2 = 0;
    for (int i = 0; i < (n + 1) / 2; i++) s2 += A[i];
    for (int i = (n + 1) / 2; i >= 0; i--)
    {
        if (s2 >= (s + 1) / 2) break;
        s2 -= A[i];
        swap(A[i], A[n - ((n + 1) / 2 - i) - 1]);
        s2 += A[i];
    }
    return A;
}

//int32_t main()
//{
//    int n, m;
//    cin >> n >> m;
//    vector <pii> r;
//    vector <int> s, t;
//    vector <bool> ii;
//    vector <ll> d;
//    for (int i = 1; i < n; i++)
//    {
//        int v, u;
//        cin >> v >> u;
//        r.pb({v, u});
//    }
//    for (int i = 1; i <= m; i++)
//    {
//        int D, S, T, I;
//        cin >> D >> S >> T >> I;
//        d.pb(D);
//        s.pb(S);
//        t.pb(T);
//        ii.pb(I);
//    }
//    vector <int> ans = solve(r, d,s,t,ii);
//    for (auto to: ans) cout << to << endl;
//    return 0;
//}
