Submission #830673

#TimeUsernameProblemLanguageResultExecution timeMemory
830673NeroZeinRadio Towers (IOI22_towers)C++17
0 / 100
909 ms1436 KiB
#include "towers.h"
#include <bits/stdc++.h>

using namespace std;

int id;
int mx, mx2;
vector<int> a; 
void init(int N, std::vector<int> H) {
  id = N - 1;
  a = H; 
  for (int i = 0; i < N - 1; ++i) {
    if (H[i] > H[i + 1]) id = i;
  }
  for (int i = 0; i < id; ++i) {
    mx = min(mx, H[i]); 
  }
  for (int i = id + 1; i < N; ++i) {
    mx2 = min(mx, H[i]); 
  }
}

int max_towers(int L, int R, int D) {
  if (L < id && R > id) {
    int mn1 = a[id], mn2 = a[id];
    for (int i = id - 1; i >= L; --i) mn1 = min(mn1, a[i]);
    for (int i = id + 1; i <= R; ++i) mn2 = min(mn2, a[i]);
    return (mn1 <= a[id] - D && mn2 <= a[id] - D ? 2 : 1); 
  }
  return 1; 
}
#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...