This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "towers.h"
#include <bits/stdc++.h>
using namespace std;
//subtask 2
const int nax = 2002;
int n;
int h[nax];
void init(int N, vector<int> H) {
  n = N;
  for(int i=0; i<n; ++i) {
  	h[i] = H[i];
  }
}
int dp[nax];
int max_towers(int L, int R, int D) {
	int ret = 0;
	for(int i=R; i>=L; --i) {
		int mx = 0;
		for(int j=i+1; j<=R; ++j) {
			if(max(h[i], h[j])+D<=mx) {
				dp[i] = max(dp[i], dp[j]);
			}
			mx = max(mx, h[j]);
		}
		++dp[i];
		ret = max(ret, dp[i]);
	}
	return ret;
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |