This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "towers.h" //sub1
#include <bits/stdc++.h>
using namespace std;
vector<int> he;
int k=-1,n;
void init (int ne,vector<int> h)
{
n=ne;
he.resize(n);
for(int x=0;x<n;x++)
{
he[x]=h[x];
if(h[x]>h[x+1] && x!=n && k==-1)
k=x;
}
if(h[n-1]>h[n-2])
k=n-1;
}
int max_towers(int l, int r, int d)
{
if(l==r)
return 1;
if(l>k || r<k)
return 1;
int ans=0;
for(int x=l;x<k;x++)
{
if(he[x]<=he[k]-d && he[r]<=he[k]-d)
ans++;
}
for(int x=r;x>k;x--)
{
if(he[x]<=he[k]-d && he[l]<=he[k]-d)
ans++;
}
return max(ans,1);
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |