Submission #657492

#TimeUsernameProblemLanguageResultExecution timeMemory
657492senthetaCatfish Farm (IOI22_fish)C++17
6 / 100
90 ms17408 KiB
#include "fish.h" // author : sentheta aka vanwij #include<iostream> #include<iomanip> #include<algorithm> #include<cassert> #include<random> #include<chrono> #include<cmath> #include<string> #include<vector> #include<bitset> #include<queue> #include<stack> #include<map> #include<set> using namespace std; #define Int long long #define V vector #define pii pair<int,int> #define ff first #define ss second #define rand() (uniform_int_distribution<int>(0,1<<30)(rng)) mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count()); #define pow2(x) (1LL<<(x)) #define msb(x) (63-__builtin_clzll(x)) #define bitcnt(x) (__builtin_popcountll(x)) #define nl '\n' #define _ << ' ' << #define all(x) (x).begin(), (x).end() #define rep(i,a,b) for(int i = (int)(a); i < (int)(b); i++) #define dbg(x) if(1) cout << "?" << #x << " : " << (x) << endl << flush; const Int N = 2e5+5; Int n, m; V<Int> x, y, w; Int zro[N], one[N]; Int max_weights(int _n,int _m,V<int> _x,V<int> _y,V<int> _w){ n = _n; m = _m; x = V<Int>(all(_x)); y = V<Int>(all(_y)); w = V<Int>(all(_w)); rep(i,0,m){ if(x[i]==0) zro[y[i]] += w[i]; else one[y[i]] += w[i]; } rep(i,1,N){ zro[i] += zro[i-1]; one[i] += one[i-1]; } if(n <= 2){ return max(zro[n], one[n]); } Int ans = one[n]; rep(i,0,n){ ans = max(ans, zro[i] + one[n]-one[i]); } return ans; return 0; }
#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...