P10393题解
题目传送门
思路
这道题
我们发现
接下来就可以用
接着将右边式子分成两部分,即
最后只需要将
代码
- 切勿抄袭!!!
#include<bits/stdc++.h>
using namespace std;
int n,smnw,bgnw,a[1000010];
int main()
{
ios::sync_with_stdio(0);
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i];
sort(a+1,a+n+1);
cout<<a[n/2+1];
smnw=1;
bgnw=n/2+2;
for(int i=2;i<=n;i++)//当a1最大时
if (i&1)
{
cout<<" "<<a[bgnw];
bgnw++;
}
else
{
cout<<" "<<a[smnw];
smnw++;
}
cout<<endl<<a[1];
smnw=2;
bgnw=n/2+2;
for(int i=2;i<=n;i++)//当a1最小时
if (i&1)
{
cout<<" "<<a[smnw];
smnw++;
}
else
{
cout<<" "<<a[bgnw];
bgnw++;
}
}