#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define s second
#define f first
vector <int> waros;
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
int maroz, odp=0, ilewar, war, ma;
cin >> ilewar >> maroz;
for( int i=0; i<ilewar; ++i ){
cin >> war;
waros.push_back( war );
}
for( int j=0; j<ilewar; ++j ){
for( int i=0; i<waros.size(); ++i ){
ma=0;
if( i-1 >= 0 )
ma = max( ma, waros[i-1]-waros[i] );
if( i+1 < waros.size() )
ma = max( ma, waros[i+1]-waros[i]);
ma = max( 0, ma-maroz );
// cerr << i << ' ' << ma << '\n';
waros[i] += ma;
odp += ma;
}
}
cout << odp << '\n';
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 33 34 35 36 | #include <bits/stdc++.h> using namespace std; #define ll long long #define s second #define f first vector <int> waros; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int maroz, odp=0, ilewar, war, ma; cin >> ilewar >> maroz; for( int i=0; i<ilewar; ++i ){ cin >> war; waros.push_back( war ); } for( int j=0; j<ilewar; ++j ){ for( int i=0; i<waros.size(); ++i ){ ma=0; if( i-1 >= 0 ) ma = max( ma, waros[i-1]-waros[i] ); if( i+1 < waros.size() ) ma = max( ma, waros[i+1]-waros[i]); ma = max( 0, ma-maroz ); // cerr << i << ' ' << ma << '\n'; waros[i] += ma; odp += ma; } } cout << odp << '\n'; return 0; } |
English