| Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|---|
| 41855 | sea_water | 【S】T4 | C++ | 解答错误 | 0 | 1000 MS | 272 KB | 723 | 2026-05-31 21:28:24 |
#include <bits/stdc++.h> using namespace std; int a[200005], b[100005], c[100005], p, T, n, m; long long ans, sum; int main() { cin >> T; while (T--) { cin >> n >> m; for (int i = 1; i <= n; i++) { cin >> a[i]; } ans = p = 0; for (int i = 1; i <= n / 2 + n % 2; i++) { b[i] = (a[i] - a[n - i + 1]) % m; c[i] = b[i] - b[i - 1]; if (c[i] > 0) ans += c[i], p++; } // cout << p << ' '; sort(c + 1, c + n / 2 + 1 + n % 2); for (int i = 1; i <= min(n / 2 + n % 2 - p, p) && m + c[i] < c[n / 2 + n % 2 - i + 1]; i++) { ans += m + c[i] - c[n / 2 + 1 - i + n % 2]; } cout << ans << '\n'; } } /* 3 4 5 0 3 1 2 1 20260418 454 7 12 3 1 4 1 5 9 2 */