题意:按升降序排列一个数组,看输出很容易理解。
题解:先将数组排序,然后从第二个数开始,每两个交换一下顺序就ok了,水题。
#include <stdio.h>
#include <algorithm>
using namespace std;
const int N = 50000 + 5;
int in[N], n;
void solve() {
for (int i = 1; i < n; i += 2) {
int temp;
temp = in[i];
in[i] = in[i + 1];
in[i + 1] = temp;
}
}
int main() {
int t;
scanf("%d", &t);
while (t--) {
scanf("%d", &n);
for (int i = 0; i < n; i++)
scanf("%d", &in[i]);
sort(in, in + n);
solve();
printf("%d", in[0]);
for (int i = 1; i < n; i++)
printf(" %d", in[i]);
printf("\n");
}
return 0;
}