Submission #1241739

#TimeUsernameProblemLanguageResultExecution timeMemory
1241739edga1Catfish Farm (IOI22_fish)C++20
0 / 100
80 ms10824 KiB
#include <bits/stdc++.h>
#include "fish.h"
#define ll long long
using namespace std;

struct fish{
    int x;
    int y;
    int w;
};

bool cmp(fish &a, fish &b){
    if(a.y!=b.y) return a.y<b.y;
    return a.x>a.y;
}

ll max_weights(int N, int M, vector<int> X, vector<int> Y, vector<int> W){
    if(N==2){
        ll r1=0,r2=0;
        for(int i=0; i<M; i++){
            if(X[i]==0) r1+=W[i];
            else r2+=W[i];
        }
        return max(r1,r2);
    }
    vector<fish> f(M);
    ll r=0,b=0;
    for(int i=0; i<M; i++){
        f[i]={X[i],Y[i],W[i]};
        if(X[i]==1) r+=W[i];
    }
    b=r;
    sort(f.begin(),f.end(),cmp);
    for(int i=0; i<M; i++){
        if(f[i].x==0) r+=f[i].w;
        else r-=f[i].w;
        b=max(b,r);
    }
    return b;
}
#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...