#include "fish.h"
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define fi first
#define se second
#define pii pair<int, int>
int n, m;
vector <int> vx, vy, w;
ll max_weights(int N, int M, vector<int> X, vector<int> Y, vector<int> W) {
    n = N, m = M, vx = X, vy = Y, w = W;
    vector <pii> v0, v1;
    ll zbr = 0;
    for (int i = 0; i < m; i++) {
        if (vx[i] == 0) v0.push_back({vy[i], w[i]});
        else v1.push_back({vy[i], w[i]}), zbr += w[i];
    }
    sort(v0.begin(), v0.end());
    sort(v1.begin(), v1.end());
    int pos = 0;
    ll ret = zbr;
    for (auto e : v0) {
        while (pos < v1.size() && v1[pos].fi <= e.fi) {
            zbr -= v1[pos].se;
            pos++;
        }
        zbr += e.se;
        ret = max(ret, zbr);
    }
    return ret;
}
//int main() {
//}
| # | 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... |