题解 | 特殊排序

#include <iostream>
#include <vector>
#include <algorithm>

using std::cout;
using std::cin;
using std::endl;
using std::vector;
using std::sort;

int main() {
    int N;
    int num;
    vector<int> vec;
    while (cin >> N) {
        if (N == 1) {
            cin >> num;
            cout << num << endl << -1 << endl;
            continue;
        }

        for (int i = 0; i < N; i++) {
            cin >> num;
            vec.push_back(num);
        }
        // 遍历一次,找到最大数
        vector<int>::iterator it;
        vector<int>::iterator Max = vec.begin();
        for (it = vec.begin(); it != vec.end(); it++) {
            if (*it > *Max)
                Max = it;
        }
        cout << *Max << endl;
        vec.erase(Max); // 删除最大数
        sort(vec.begin(), vec.end());
        for (auto elem : vec)
            cout << elem << ' ';
        cout << endl;
        vec.clear();    // 清空数据,进入下次循环
    }

    return 0;
}

全部评论

相关推荐

虾皮 后端开发 26.5k*15+3w签字费 硕士211
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务