Submission #1057276

#TimeUsernameProblemLanguageResultExecution timeMemory
1057276vjudge1송신탑 (IOI22_towers)C++17
11 / 100
4101 ms1604 KiB
#include "towers.h"

#include <vector>
#include <bits/stdc++.h>

using namespace std;

using vi = vector<int>;

int n;
vi H;
void init(int N, vi H0) {
    n = N; H = H0;
}

int max_towers(int l, int r, int d) {
    vi DP(n, 1);
    int re = 0;
    for(int i = l; i <= r; ++i) {
        int ma = H[i];
        for(int j = i - 1; j >= l; --j) {
            ma = max(ma, H[j]);
            if(ma >= H[i] + d && ma >= H[j] + d) {
                DP[i] = max(DP[i], DP[j] + 1);
            }
        }
        re = max(re, DP[i]);
    }
    return re;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...