# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1068235 | Unforgettablepl | Catfish Farm (IOI22_fish) | C++17 | 85 ms | 18244 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "fish.h"
#include <bits/stdc++.h>
using namespace std;
long long max_weights(int N, int M,vector<int> X,vector<int> Y,
vector<int> W){
if(N==2){
long long a = 0;
long long b = 0;
for(int i=0;i<X.size();i++) {
if(X[i]&1)b+=W[i];
else a+=W[i];
}
return max(a,b);
}
vector<pair<int,int>> pointsa,pointsb;
long long sum = 0;
for(int i=0;i<X.size();i++) {
if(X[i]&1) {
pointsb.emplace_back(Y[i],W[i]);
sum+=W[i];
} else pointsa.emplace_back(Y[i],W[i]);
}
sort(pointsa.begin(), pointsa.end());
sort(pointsb.begin(), pointsb.end());
pointsb.emplace_back(N+1,0);
long long ans = 0;
auto iter = pointsa.begin();
for(auto&[ht,wt]:pointsb) {
while(iter!=pointsa.end() and iter->first<ht)sum+=(iter++)->second;
ans = max(ans,sum);
ans-=wt;
}
return ans;
}
Compilation message (stderr)
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |