Submission #657801

#TimeUsernameProblemLanguageResultExecution timeMemory
657801coding_snorlaxRadio Towers (IOI22_towers)C++17
0 / 100
4075 ms1696 KiB
#include "towers.h"
#include<bits/stdc++.h>
using namespace std;
vector<int> All;
void init(int N,vector<int> H){
    for(int i=0;i<N;i++){
        All.push_back(H[i]);
    }
}
int recrution(int L,int R,int D){
    if(L>=R){
        return 1;
    }
    int Now_max=-2000000000,Max_place=-1;
    for(int i=L;i<=R;i++){
        if(All[i]>Now_max ){
            Now_max=All[i];
            Max_place=i;
        }
    }
    int flag1=0,flag2=0;
    for(int i=L;i<Max_place;i++){
        if(All[i]+D<=Now_max){
            flag1=1;
        }
    }
    for(int i=Max_place+1;i<=R;i++){
        if(All[i]+D<=Now_max){
            flag2=1;
        }
    }
    if(flag1 && flag2) return recrution(L,Max_place-1,D)+recrution(Max_place+1,R,D);
    else return 1;
}
int max_towers(int L,int R,int D){
    return recrution(L,R,D);
}
#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...