제출 #1358703

#제출 시각아이디문제언어결과실행 시간메모리
1358703lyra_g13Radio Towers (IOI22_towers)C++20
11 / 100
4083 ms1588 KiB
#include "towers.h"
#include <bits/stdc++.h>
using ll = long long;
using namespace std;

int n;
vector<int> h;
void init(int N, vector<int> H) {
  n = N;
  h = H;
};
int max_towers(int l, int r, int d) {

  int ans = 1;
  vector<int> dp(n, 1);
  for (int i = l; i <= r; i++) {
    dp[i] = 1;
    int mid = 0;
    for (int j = i - 1; j >= l; j--) {
      if (j + 1 < i)
        mid = max(mid, h[j + 1]);
      int bound = max(h[j], h[i]) + d;

      if (mid >= bound)
        dp[i] = max(dp[i], dp[j] + 1);
    }
    ans = max(ans, dp[i]);
  }

  return ans;
};
#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...