Submission #303539

#TimeUsernameProblemLanguageResultExecution timeMemory
303539leejseoComparing Plants (IOI20_plants)C++17
5 / 100
115 ms5880 KiB
#include "plants.h" #include <bits/stdc++.h> using namespace std; int N, K; int R[200005]; int _P[200005]; int *P = _P+1; void init(int k, vector<int> r) { K = k; N = r.size(); for (int i=0; i<N; i++) R[i] = r[i]; for (int i=0; i<N; i++){ if (R[i] != R[(i+1)%N]) P[(i+1)%N]++; } for (int i=0; i<N; i++){ P[i+1] += P[i]; } } int compare_plants(int x, int y) { // [x, y) if (P[x] == P[y-1]){ // 증감 같은 구간 return R[x] == 1 ? -1 : 1; } else if (P[y] == P[N-1] && P[x-1] == 0){ // 사이에 N 끼는 증감 같은 구간 return R[y] == 1 ? 1 : -1; } return 0; }
#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...