#include <bits/stdc++.h>
using namespace std;
int a[1010];
int wyn = 0;
int n, k;
inline void fix(int i, int j){
int diff = a[i] - a[j];
if (diff > k) {
a[j] += diff - k;
wyn += diff - k;
}
}
int main() {
ios_base::sync_with_stdio(0);
cin >> n >> k;
for (int i = 0; i < n; i++) cin >> a[i];
for (int p = 1; p <= 1050; p++) {
for (int i = 1; i < n; i++) {
fix(i, i-1);
fix(i-1, i);
}
}
cout << wyn << endl;
return 0;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | #include <bits/stdc++.h> using namespace std; int a[1010]; int wyn = 0; int n, k; inline void fix(int i, int j){ int diff = a[i] - a[j]; if (diff > k) { a[j] += diff - k; wyn += diff - k; } } int main() { ios_base::sync_with_stdio(0); cin >> n >> k; for (int i = 0; i < n; i++) cin >> a[i]; for (int p = 1; p <= 1050; p++) { for (int i = 1; i < n; i++) { fix(i, i-1); fix(i-1, i); } } cout << wyn << endl; return 0; } |
English