Submission #786706

#TimeUsernameProblemLanguageResultExecution timeMemory
786706Mouad_oujRadio Towers (IOI22_towers)C++17
4 / 100
1817 ms1444 KiB
#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++;
    }
    if(ans>2)
    ans=2;
    return max(ans,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...