Submission #637998

#TimeUsernameProblemLanguageResultExecution timeMemory
637998aris12345678Catfish Farm (IOI22_fish)C++17
6 / 100
123 ms17576 KiB
#include "fish.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int, int> pii; #define X first #define Y second ll max_weights(int n, int m, vector<int> x, vector<int> y, vector<int> w) { vector<pii> A, B; ll first = 0LL, second = 0LL; for(int i = 0; i < m; i++) { if(x[i] == 0) { first += 1LL*w[i]; A.push_back({y[i], w[i]}); } else { second += 1LL*w[i]; B.push_back({y[i], w[i]}); } } A.push_back({INT_MAX, INT_MAX}); B.push_back({INT_MAX, INT_MAX}); if(n == 2) return max(first, second); ll ans = second; first = 0LL; sort(A.begin(), A.end()); sort(B.begin(), B.end()); int i = 0, j = 0; while(i+j < m) { if(A[i].X < B[j].X) first += 1LL*A[i++].Y; else second -= 1LL*B[j++].Y; ans = max({ans, first+second}); } return ans; }
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...