Submission #629863

#TimeUsernameProblemLanguageResultExecution timeMemory
629863europium메기 농장 (IOI22_fish)C++17
6 / 100
338 ms24488 KiB
#include "fish.h" #include <iostream> #include <vector> #include <algorithm> #include <string> #include <numeric> #include <cmath> #include<iterator> #include <set> #include <map> #include <math.h> #include <iomanip> #include <unordered_set> using namespace std; using ll = long long; ll max_weights(int n, int m, vector<int> x, vector<int> y, vector<int> w){ map<ll,ll> zero, one; ll one_sum = 0; set<ll> y_cor; for (int i = 0; i < m; i++){ if (x[i] == 0) zero[y[i]] = w[i]; else{ one[y[i]] = w[i]; one_sum += w[i]; } y_cor.insert(y[i]); } ll curr_zero = 0, curr_one = 0, ans = one_sum; for (auto y_pos : y_cor){ curr_zero += zero[y_pos]; curr_one += one[y_pos]; // cout << y_pos << ' ' << curr_zero << ' ' << curr_one << ' ' << curr_zero + one_sum - curr_one << '\n'; ans = max(ans, curr_zero + one_sum - curr_one); } if (n == 2) return max(curr_zero, one_sum); 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...