제출 #792100

#제출 시각아이디문제언어결과실행 시간메모리
792100mousebeaver식물 비교 (IOI20_plants)C++14
0 / 100
56 ms4796 KiB
#include "plants.h" #include <bits/stdc++.h> using namespace std; vector<int> height(0); void init(int k, vector<int> r) { int n = r.size(); height.assign(n, -1); //-1 = already known int counter = n; for(int nodes = 0; nodes < n; nodes++) { int val = 0; for(int i = 0; i < n; i++) { if(height[i] == -1) { val = max(val, r[i]); } } vector<int> candidates(0); for(int i = 0; i < n; i++) { if(height[i] == -1 && r[i] == val) { candidates.push_back(i); } } sort(candidates.begin(), candidates.end()); int index = 0; while(index < (int) candidates.size()-1 && (candidates[index]+k-1) >= candidates[(index+1)]) { index++; } height[candidates[index]] = counter; counter--; for(int i = 0; i < k; i++) { r[(candidates[index]+i)%n]++; } candidates.clear(); } //vector<int> test = height; //int temp = 0; for(int i = 0; i < n; i++) { height[i] = n-height[i]; } } int compare_plants(int x, int y) { if(height[x] > height[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...