Submission #633414

#TimeUsernameProblemLanguageResultExecution timeMemory
633414Lawliet송신탑 (IOI22_towers)C++17
14 / 100
848 ms1872 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]; for(int i = 1 ; i <= n ; i++) { if( v[i - 1] > v[i] && v[i] < v[i + 1] ) dp[i] = 1; dp[i] += dp[i - 1]; } } int max_towers(int L, int R, int D) { L++; R++; int ans = dp[R] - dp[L - 1]; if( L == R ) return 1; if( v[L - 1] < v[L] && v[L] < v[L + 1] ) ans++; if( v[R - 1] > v[R] && v[R] > v[R + 1] ) ans++; 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...