四大文化赛道完整展开
02-solution/src/cpp/main.cpp
main.cpp
站内文件视图直接读取仓库内容,Markdown 使用文档排版渲染,其余文本文件保持原始排版,方便校对训练证据链。
文件类型.cpp
10-cases/s2-jh-06-supply-balance/02-solution/src/cpp/main.cpp
#include <cstdlib>
#include <iostream>
#include <vector>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n;
if (!(cin >> n)) {
return 0;
}
vector<long long> values(n);
long long total = 0;
for (int i = 0; i < n; ++i) {
cin >> values[i];
total += values[i];
}
if (total % n != 0) {
cout << "possible=NO\n";
return 0;
}
long long target = total / n;
long long prefix_diff = 0;
long long units = 0;
int moves = 0;
for (int i = 0; i < n - 1; ++i) {
prefix_diff += values[i] - target;
if (prefix_diff != 0) {
++moves;
units += llabs(prefix_diff);
}
}
cout << "possible=YES\n";
cout << "moves=" << moves << "\n";
cout << "units=" << units << "\n";
return 0;
}