//laptrinhsgu.wordpress.com
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,t=0,f[10001],d[10001];
cin>>n;
int a[n+1];
for (int i=1;i<=n;i++)
{
cin>>a[i];
t=t+a[i];
}
t=t/2;
//QHD
for (int i=1;i<=t;i++)
{
f[i]=INT_MAX;
for (int j=1;j<=n;j++)
if (i>=a[j] && j>f[i-a[j]])
{
f[i]=j;
break;
}
}
//Truyvet
while (f[t] > n) t--;
while (t > 0)
{
d[f[t]]=1;
t=t-a[f[t]];
}
for (int i=1;i<=n;i++)
if (d[i]==1) cout<<a[i]<<" ";
cout<<endl;
for (int i=1;i<=n;i++)
if (d[i]!=1) cout<<a[i]<<" ";
cout<<endl;
}
Ly9sYXB0cmluaHNndS53b3JkcHJlc3MuY29tCgojaW5jbHVkZSA8Yml0cy9zdGRjKysuaD4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpCnsKCWludCBuLHQ9MCxmWzEwMDAxXSxkWzEwMDAxXTsKCWNpbj4+bjsKCWludCBhW24rMV07Cglmb3IgKGludCBpPTE7aTw9bjtpKyspCgkgICB7CgkgICAJY2luPj5hW2ldOwoJICAgCXQ9dCthW2ldOwoJICAgfQoJdD10LzI7Ci8vUUhECglmb3IgKGludCBpPTE7aTw9dDtpKyspCgl7CgkJZltpXT1JTlRfTUFYOwoJICAgZm9yIChpbnQgaj0xO2o8PW47aisrKQoJICAgICAgaWYgKGk+PWFbal0gJiYgaj5mW2ktYVtqXV0pIAoJICAgICAgewoJICAgICAgCWZbaV09ajsKCSAgICAgIAlicmVhazsKCQkgIH0KCX0KCi8vVHJ1eXZldAoJd2hpbGUgKGZbdF0gPiBuKSB0LS07Cgl3aGlsZSAodCA+IDApCgl7CgkJZFtmW3RdXT0xOwoJCXQ9dC1hW2ZbdF1dOwoJfQoJZm9yIChpbnQgaT0xO2k8PW47aSsrKQoJICAgaWYgKGRbaV09PTEpIGNvdXQ8PGFbaV08PCIgIjsKCSAgIGNvdXQ8PGVuZGw7Cglmb3IgKGludCBpPTE7aTw9bjtpKyspCgkJaWYgKGRbaV0hPTEpIGNvdXQ8PGFbaV08PCIgIjsKCQljb3V0PDxlbmRsOwp9