qwert1596 2023-07-29 18:13 采纳率: 75%
浏览 5
已结题

请问怎样才能使排序正确求答案及注解

赶海咯

描述

小星有一位济南的朋友小Y,最近济南的天气实在太热了,想要来青岛度假,想要去赶海,但是赶海需要知道,涨潮和退潮的情况,所以就让本地人的小星,来调查涨潮和退潮的情况。
不幸的是,小星把每一天调查的数据放在了书房,但是在开窗户的时候,风把数据的纸张吹乱了,幸亏小星还能记得这些数据的特征
他开始测量退潮时的水位,他的第二次测量是涨潮时的水位,之后继续在退潮和涨潮之间交替测量。
所有涨潮测量值都高于所有退潮测量值。
注意到,随着时间的推移,涨潮只会变高,退潮只会变低。
现在请你帮助小星把数据恢复原状吧

输入描述
第一行,输入调查数据的数量
第二行,输入n个数据,表示调查的数据(保证在int范围)

输出描述
输出恢复后的数据顺序,每个数据直接用空格隔开

样例输入 1

8
10 50 40 7 3 110 90 2
样例输出 1

10 40 7 50 3 90 2 110


#include <iostream>
#include <vector>
#include <algorithm>
 
using namespace std;
 
int main() {
    int n;
    cin >> n;
 
    vector<int> data(n);
    for (int i = 0; i < n; i++) {
        cin >> data[i];
    }
 
    sort(data.begin(), data.end());
 
    vector<int> result(n);
    int start = 0, end = n - 1;
    for (int i = 0; i < n; i++) {
        if (i % 2 == 0) {
            result[i] = data[start++];
        } else {
            result[i] = data[end--];
        }
    }
 
    for (int i = 0; i < n; i++) {
        cout << result[i] << " ";
    }
    cout << endl;
 
    return 0;
}
  • 写回答

2条回答 默认 最新

  • 关注
    #include<bits/stdc++.h>
    using namespace std;
    const int N = 1e5 + 5;
    int n, num[N], num1[N], num2[N], cnt, cnt1, cnt2;
    int main(){
        cin >> n;
        for(int i = 1; i <= n; i++){
            cin >> num[i];
        }
        sort(num + 1, num + 1 + n);
        for(int i = n / 2 + 1; i <= n; i++){
            num2[i] = num[i];
        }
        for(int i = n / 2; i >= 1; i--){
            num1[++cnt] = num[i];
        }
        cnt2 = cnt;
        for(int i = 1; i <= n; i++){
            if(i % 2){//退潮 
                cout << num1[++cnt1] << " ";
            }else{
                cout << num2[++cnt2] << " ";
            }
        }
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 8月6日
  • 已采纳回答 7月29日
  • 创建了问题 7月29日

悬赏问题

  • ¥15 MYSQL 多表拼接link
  • ¥15 关于某款2.13寸墨水屏的问题
  • ¥15 obsidian的中文层级自动编号
  • ¥15 同一个网口一个电脑连接有网,另一个电脑连接没网
  • ¥15 神经网络模型一直不能上GPU
  • ¥15 pyqt怎么把滑块和输入框相互绑定,求解决!
  • ¥20 wpf datagrid单元闪烁效果失灵
  • ¥15 券商软件上市公司信息获取问题
  • ¥100 ensp启动设备蓝屏,代码clock_watchdog_timeout
  • ¥15 Android studio AVD启动不了