钱雨辰
(上弦二 童磨)
1
- V型序列
题目ID:9605必做题100分
时间限制: 1000ms
空间限制: 524288kB
题目描述
给定
n个整数,请将这些数字按大小梯度排成 V 型的序列。其中a1,an项分别是第一大的数、
第二大的数,a2、an−1项分别是第四大、第三大的数,a3、an−2分别是第五大、第六大的数……
比如给定 9 个整数,1、2、3、4、5、6、7、8、9,那么这个序列的 V 型排列为 9、6、5、2、1、3、4、7、8。
输入格式
第一行输入一个整数 n,表示待排列的数字个数。
第二行内输入
n 个整数,用空格间隔,表示待排列的数字。
输出格式
输出 n 个整数,用空格间隔,表示排好的 V 型序列。
样例
Input 1
4
10 15 9 25
Output 1
25 9 10 15
样例解释
给定的4个整数为10、15、9、25,按照大小梯度排列后的V型序列为25、9、10、15。
数据范围
1≤n≤1000。
向着星辰与深渊
(原神)
2
本蒟蒻认为,搞两个数组,一个正着排,一个反着排,再各取一半,输出
向着星辰与深渊
(原神)
8
#include<bits/stdc++.h>
using namespace std;
#define ll long long
//定义变量
bool cmp(ll x,ll y){
// 从大到小排
}
int main(){
//输入n和a数组
for(ll i=1;i<=n;i++){
//将a数组复制一份,存到b数组里
}
sort(a+1,a+n+1,cmp);
sort(b+1,b+n+1);
for(ll i=1;i<=n/2;i++){
//如果i%2!=0输出a[i]和b[i]
}
return 0;
}
1 个赞
system
(system)
关闭
19
此话题已在最后回复的 15 天后被自动关闭。不再允许新回复。