제출 #1256221

#제출 시각아이디문제언어결과실행 시간메모리
1256221biankRotating Lines (APIO25_rotate)C++20
100 / 100
45 ms2416 KiB
#include "rotate.h"
#include <bits/stdc++.h>

#define forn(i, n) for (int i = 0; i < int(n); i++)
#define forsn(i, s, n) for (int i = int(s); i < int(n); i++)
#define dforn(i, n) for (int i = int(n) - 1; i >= 0; i--)
#define dforsn(i, s, n) for (int i = int(n) - 1; i >= int(s); i--)

#define sz(x) (int) x.size()
#define all(x) begin(x), end(x)

using namespace std;

#define pb push_back

using ll = long long;
using vi = vector<int>;
using ii = pair<int, int>;

#define fst first
#define snd second

const int M = 50000;

void energy(int n, vi v) {
    vector<ii> a(n);
    forn(i, n) a[i] = {v[i], i};
    sort(all(a));
    forn(i, n / 2) {
        int need = (a[i].fst + M / 2) % M;
        int diff = (need - a[i + (n + 1) / 2].fst + M) % M;
        rotate(vi{a[i + (n + 1) / 2].snd}, diff);
    }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...