1 solutions
-
0
C :
#include<stdio.h> #include<string.h> long long a[2005]; int main() { int n,d,i; while(~scanf("%d%d",&n,&d)) { int sum = 0; memset(a,0,sizeof(a)); for(i = 1;i <= n;i++) { scanf("%lld",&a[i]); if(a[i] > a[i - 1]) continue; else { int t = a[i - 1] - a[i]; a[i] = (t / d + 1) * d + a[i]; sum += t / d + 1; } } printf("%d\n",sum); } }C++ :
#include<cstdio> #include<cstdlib> #include<cstring> #include<cctype> #include<cmath> #include<algorithm> #include<iostream> #include<string> #include<vector> #include<bitset> #include<queue> #include<stack> #include<list> #include<map> #include<set> #define TEST #define LL long long #define Mt(f, x) memset(f, x, sizeof(f)); #define rep(i, s, e) for(int i = (s); i <= (e); ++i) #ifdef TEST #define See(a) cout << #a << " = " << a << endl; #define See2(a, b) cout << #a << " = " << a << ' ' << #b << " = " << b << endl; #define debug(a, s, e) rep(_i, s, e) {cout << a[_i] << ' ';} cout << endl; #define debug2(a, s, e, ss, ee) rep(i_, s, e) {debug(a[i_], ss, ee)} #else #define See(a) #define See2(a, b) #define debug(a, s, e) #define debug2(a, s, e, ss, ee) #endif // TEST const int MAX = 2e9; const int MIN = -2e9; const double eps = 1e-8; const double PI = acos(-1.0); using namespace std; int a[2005]; int main() { int n, d; // freopen("in.txt", "r", stdin); // freopen("out.txt", "w", stdout); while(~scanf("%d%d", &n, &d)) { int ans = 0; for(int i = 0; i < n; ++i) { scanf("%d", &a[i]); } for(int i = 1; i < n; ++i) { if(a[i - 1] >= a[i]) { int t = (a[i - 1] - a[i]) / d + 1; a[i] += t * d; ans += t; } } printf("%d\n", ans); } return 0; }
- 1
Information
- ID
- 18244
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By