제출 #633382

#제출 시각아이디문제언어결과실행 시간메모리
633382Lawliet송신탑 (IOI22_towers)C++17
11 / 100
4078 ms1736 KiB
#include "towers.h" #include <bits/stdc++.h> using namespace std; const int maxn = 100010; int n; int v[maxn]; int dp[maxn]; void init(int N, std::vector<int> H) { n = N; for(int i = 1 ; i <= n ; i++) v[i] = H[i - 1]; } int max_towers(int L, int R, int D) { L++; R++; int ans = 0; for(int i = R ; i >= L ; i--) { dp[i] = 0; int maxTower = v[i + 1]; for(int j = i + 2 ; j <= R ; j++) { if( v[i] <= maxTower - D && v[j] <= maxTower - D ) dp[i] = max( dp[i] , dp[j] ); maxTower = max( maxTower , v[j] ); } dp[i]++; 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...