이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "towers.h"
#include <vector>
using namespace std;
int valley[100100];
vector<int>H;
void init(int N, std::vector<int> H_) {
H=H_;
for(int i=1;i<N;i++)
valley[i]=valley[i-1]+(H[i]<H[i-1]&&H[i]<H[i+1]);
}
int dp[100100];
int max_towers(int l, int r, int D) {
int ans=0;
for(int i=l;i<=r;i++){
dp[i]=0;
int mx=0;
for(int j=i;j-->l;){
if(mx>=max(H[j],H[i])+D)
dp[i]=max(dp[i],dp[j]);
mx=max(mx,H[j]);
}
ans=max(ans,++dp[i]);
}
return ans;
}
| # | 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... |