Submission #56624631
Source Code Expand
#include<bits/stdc++.h> using namespace std; using ll = long long; #define all(x) (x).begin(), (x).end() int main() { cin.tie(0)->sync_with_stdio(false); int n, m; cin >> n >> m; vector<ll> a(n), b(n); for (ll &i : a) cin >> i; for (ll &i : b) cin >> i; if (m == 2) { cout << (a == b ? 0 : -1) << '\n'; return 0; } vector<ll> c(n); c[0] = b[0]; for (int i = 1; i < n; i++) { ll d = (b[i] - b[i - 1] + m) % m; if (a[i] > a[i - 1]) c[i] = c[i - 1] + d; else c[i] = c[i - 1] - (m - d); } vector<ll> d(n); for (int i = 0; i < n; i++) d[i] = c[i] - a[i]; auto check = [&](ll x) { ll cost = 0; for (int i = 0; i < n; i++) cost += abs((c[i] - x * m) - a[i]); return cost; }; sort(all(d)); ll ans = 1e18; for (int i = max(n / 2 - 5, 0); i <= min(n / 2 + 5, n - 1); i++) { ll f = d[i] / m; for (int j = -10; j <= 10; j++) ans = min(ans, check(f + j)); } cout << ans << '\n'; return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - Increment Decrement Again |
User | juliany2 |
Language | C++ 20 (gcc 12.2) |
Score | 700 |
Code Size | 1191 Byte |
Status | AC |
Exec Time | 65 ms |
Memory | 9428 KiB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 700 / 700 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 00-sample-001.txt, 00-sample-002.txt, 00-sample-003.txt |
All | 00-sample-001.txt, 00-sample-002.txt, 00-sample-003.txt, 01-random-001.txt, 01-random-002.txt, 01-random-003.txt, 01-random-004.txt, 01-random-005.txt, 01-random-006.txt, 01-random-007.txt, 01-random-008.txt, 01-random-009.txt, 01-random-010.txt, 01-random-011.txt, 01-random-012.txt, 01-random-013.txt, 01-random-014.txt, 01-random-015.txt, 02-large-001.txt, 02-large-002.txt, 02-large-003.txt, 02-large-004.txt, 02-large-005.txt, 02-large-006.txt, 02-large-007.txt, 02-large-008.txt, 02-large-009.txt, 02-large-010.txt, 03-max-001.txt, 03-max-002.txt, 03-max-003.txt, 03-max-004.txt, 03-max-005.txt, 04-small-001.txt, 04-small-002.txt, 04-small-003.txt, 04-small-004.txt, 04-small-005.txt, 04-small-006.txt, 04-small-007.txt, 04-small-008.txt, 04-small-009.txt, 04-small-010.txt, 05-corner-001.txt, 05-corner-002.txt, 05-corner-003.txt, 05-corner-004.txt, 05-corner-005.txt, 05-corner-006.txt, 05-corner-007.txt, 05-corner-008.txt, 05-corner-009.txt, 05-corner-010.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00-sample-001.txt | AC | 1 ms | 3456 KiB |
00-sample-002.txt | AC | 1 ms | 3476 KiB |
00-sample-003.txt | AC | 1 ms | 3476 KiB |
01-random-001.txt | AC | 19 ms | 4608 KiB |
01-random-002.txt | AC | 4 ms | 3580 KiB |
01-random-003.txt | AC | 21 ms | 5200 KiB |
01-random-004.txt | AC | 57 ms | 8376 KiB |
01-random-005.txt | AC | 28 ms | 5680 KiB |
01-random-006.txt | AC | 56 ms | 8304 KiB |
01-random-007.txt | AC | 17 ms | 4576 KiB |
01-random-008.txt | AC | 8 ms | 3872 KiB |
01-random-009.txt | AC | 38 ms | 6832 KiB |
01-random-010.txt | AC | 22 ms | 4832 KiB |
01-random-011.txt | AC | 44 ms | 7360 KiB |
01-random-012.txt | AC | 59 ms | 8688 KiB |
01-random-013.txt | AC | 37 ms | 6688 KiB |
01-random-014.txt | AC | 4 ms | 3544 KiB |
01-random-015.txt | AC | 18 ms | 4576 KiB |
02-large-001.txt | AC | 46 ms | 7496 KiB |
02-large-002.txt | AC | 36 ms | 6420 KiB |
02-large-003.txt | AC | 36 ms | 6380 KiB |
02-large-004.txt | AC | 64 ms | 9428 KiB |
02-large-005.txt | AC | 63 ms | 9088 KiB |
02-large-006.txt | AC | 47 ms | 7480 KiB |
02-large-007.txt | AC | 52 ms | 7968 KiB |
02-large-008.txt | AC | 47 ms | 7516 KiB |
02-large-009.txt | AC | 35 ms | 6612 KiB |
02-large-010.txt | AC | 33 ms | 6204 KiB |
03-max-001.txt | AC | 64 ms | 9412 KiB |
03-max-002.txt | AC | 65 ms | 9360 KiB |
03-max-003.txt | AC | 65 ms | 9404 KiB |
03-max-004.txt | AC | 65 ms | 9412 KiB |
03-max-005.txt | AC | 65 ms | 9348 KiB |
04-small-001.txt | AC | 1 ms | 3448 KiB |
04-small-002.txt | AC | 1 ms | 3372 KiB |
04-small-003.txt | AC | 1 ms | 3468 KiB |
04-small-004.txt | AC | 1 ms | 3380 KiB |
04-small-005.txt | AC | 1 ms | 3356 KiB |
04-small-006.txt | AC | 1 ms | 3476 KiB |
04-small-007.txt | AC | 1 ms | 3448 KiB |
04-small-008.txt | AC | 1 ms | 3472 KiB |
04-small-009.txt | AC | 1 ms | 3452 KiB |
04-small-010.txt | AC | 1 ms | 3384 KiB |
05-corner-001.txt | AC | 6 ms | 4580 KiB |
05-corner-002.txt | AC | 8 ms | 4872 KiB |
05-corner-003.txt | AC | 7 ms | 4884 KiB |
05-corner-004.txt | AC | 11 ms | 5644 KiB |
05-corner-005.txt | AC | 7 ms | 4868 KiB |
05-corner-006.txt | AC | 12 ms | 5852 KiB |
05-corner-007.txt | AC | 45 ms | 7996 KiB |
05-corner-008.txt | AC | 37 ms | 6916 KiB |
05-corner-009.txt | AC | 52 ms | 8872 KiB |
05-corner-010.txt | AC | 56 ms | 9420 KiB |