이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include<bits/stdc++.h>
#define MAXN 200007
using namespace std;
int n,perm[MAXN],k,minpos,maxpos;
int pref[MAXN],sum,inv;
void init(int K,vector<int> R){
n=int(R.size()); k=K;
for(int i=0;i<n;i++){
pref[i+1]=R[i];
pref[i+1]+=pref[i];
sum+=R[i];
}
}
int compare_plants(int x, int y){
if(x>y){
swap(x,y); inv=-1;
}else{
inv=1;
}
x++; y++;
if(pref[y-1]-pref[x-1]==0)return 1*inv;
if(pref[y-1]-pref[x-1]==y-x)return -1*inv;
if(sum-(pref[y-1]-pref[x-1])==0)return -1*inv;
if(sum-(pref[y-1]-pref[x-1])==n-(y-x))return 1*inv;
return 0;
}
/*
int main(){
init(1,{1,0,0,1,0,0});
cout<<compare_plants(0,4)<<"\n";
cout<<compare_plants(1,3)<<"\n";
cout<<compare_plants(2,1)<<"\n";
cout<<compare_plants(2,0)<<"\n";
cout<<compare_plants(3,4)<<"\n";
}
*/
# | 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... |