Submission #357664

#TimeUsernameProblemLanguageResultExecution timeMemory
357664dooweyComparing Plants (IOI20_plants)C++14
14 / 100
4070 ms9708 KiB
#include <bits/stdc++.h> #include "plants.h" using namespace std; typedef long long ll; typedef pair<int,int> pii; #define fi first #define se scond #define mp make_pair const int N = (int)2e5 + 100; int A[N]; int vl[N]; void init(int k, vector<int> r) { int n = r.size(); for(int i = 0 ; i < n; i ++ ){ if(r[i] == 0){ for(int j = 1; j < k ; j ++ ){ vl[(i + j) % n] ++ ; } } } int pv; for(int id = n - 1; id >= 0; id -- ){ for(int q = 0; q < n; q ++ ){ if(vl[q] == 0 && r[q] == 0){ A[q] = id; for(int j = 0; j < k ; j ++ ){ pv = (q - j + n) % n; r[pv] -- ; if(r[pv] == 0){ for(int z = 1; z < k ; z ++ ){ vl[(pv + z) % n] ++ ; } } vl[(q + j) % n] -- ; } break; } } } } int compare_plants(int x, int y) { if(A[x] < A[y]) return -1; return +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...