Submission #1050130

#TimeUsernameProblemLanguageResultExecution timeMemory
1050130mychecksedadComparing Plants (IOI20_plants)C++17
0 / 100
1 ms348 KiB
#include "plants.h" #include<bits/stdc++.h> using namespace std; #define ll long long int #define pb push_back #define vi vector<int> const int N = 3e5; int a[N], n; void init(int k, std::vector<int> r) { n = r.size(); for(int i = 0; i < n; ++i) a[i] = 0; for(int i = 0; i < n; ++i) r[i] = k - 1 - r[i]; if(2*k > n){ int mx = 0; int f = n-1; for(int rep = 0; rep < n; ++rep){ for(int i = 0; i < n; ++i){ mx = max(mx, r[i]); } int l = n, rr = -1; for(int i = 0; i < n; ++i){ if(r[i] == mx){ l = min(l, i); rr = max(rr, i); } } int x; if(l + k <= rr) x = rr; else x = l; a[x] = f--; r[x] = -n-n; for(int i = x - 1; i > x - k; --i) r[(i+n)%n]++; } // for(int i = 0; i < n; ++i) cout << a[i] << ' '; }else{ } } int compare_plants(int x, int y) { return a[x] > a[y] ? -1 : (a[x] < a[y] ? 1 : 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...