mayoko’s diary

プロコンとかいろいろ。

SRM 662 div1 easy:FoxesOfTheRoundTable

久しぶりに記事書きます。といっても書くことがない…

解法

kenkoooo.hatenablog.com


class FoxesOfTheRoundTable {
public:
    vector <int> minimalDifference(vector <int> h) {
        int n = h.size();
        vector<int> ret;
        vector<pii> P;
        P.resize(n);
        for (int i = 0; i < n; i++) {
            P[i] = make_pair(h[i], i);
        }
        sort(P.begin(), P.end());
        for (int i = 0; i < n-1; i += 2) {
            ret.push_back(P[i].second);
        }
        ret.push_back(P[n-1].second);
        for (int i = n-2; i >= 1; i -= 2) {
            if (i%2 == 0) i--;
            ret.push_back(P[i].second);
        }
        return ret;
    }
};