#include <bits/stdc++.h>
#include <ios>
using namespace std;
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int n, k;
cin >> n >> k;
vector<int> v;
for (int i = 0; i < n; i++) {
int a;
cin >> a;
v.push_back(a);
}
long long ans = 0;
bool end = true;
while(end){
end = false;
for(int j = 1;j<n;j++){
if (v[j] - v[j-1] > k){
int val = v[j] - v[j-1] - k;
ans += val;
v[j-1] += val;
end = true;
}
if (v[j-1] - v[j] > k){
int val = v[j-1] - v[j] - k;
ans += val;
v[j] += val;
end = true;
}
}
}cout << ans;
}
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 33 34 35 | #include <bits/stdc++.h> #include <ios> using namespace std; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, k; cin >> n >> k; vector<int> v; for (int i = 0; i < n; i++) { int a; cin >> a; v.push_back(a); } long long ans = 0; bool end = true; while(end){ end = false; for(int j = 1;j<n;j++){ if (v[j] - v[j-1] > k){ int val = v[j] - v[j-1] - k; ans += val; v[j-1] += val; end = true; } if (v[j-1] - v[j] > k){ int val = v[j-1] - v[j] - k; ans += val; v[j] += val; end = true; } } }cout << ans; } |
English