제출 #1365533

#제출 시각아이디문제언어결과실행 시간메모리
1365533gayRotating Lines (APIO25_rotate)C++20
5 / 100
0 ms836 KiB
#include <vector>
#include <algorithm>
#include <numeric>

void rotate(std::vector<int> t, int x);

void energy(int n, std::vector<int> v) {
    std::vector<int> p(n);
    std::iota(p.begin(), p.end(), 0);
    std::sort(p.begin(), p.end(), [&](int a, int b) {
        return v[a] < v[b];
    });

    int m = n / 2;
    int target_base = v[p[m]];
    int target_alt = (target_base + 25000) % 50000;

    for (int i = 0; i < m; ++i) {
        int id = p[i];
        int current_v = v[id];
        int diff = (target_alt - current_v + 50000) % 50000;
        if (diff != 0) {
            rotate({id}, diff);
            v[id] = target_alt;
        }
    }

    for (int i = n - 1; i >= m; --i) {
        int id = p[i];
        int current_v = v[id];
        int diff = (target_base - current_v + 50000) % 50000;
        if (diff != 0) {
            rotate({id}, diff);
            v[id] = target_base;
        }
    }
}
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…