题解:P12543 [APIO2025] 转杆
hhoppitree · · 题解
将直线按照幅角排序后,依次将第
代码实现:
#include <bits/stdc++.h>
#include "rotate.h"
using namespace std;
void energy(int n, vector<int> a) {
vector< pair<int, int> > p;
for (int i = 0; i < n; ++i) p.emplace_back(a[i], i);
sort(p.begin(), p.end());
for (int i = 0, j = (p.size() + 1) / 2; j < p.size(); ++i, ++j) {
rotate({p[j].second}, p[i].first + 25000 - p[j].first);
}
}