Submission #705102

#TimeUsernameProblemLanguageResultExecution timeMemory
705102danikoynovCatfish Farm (IOI22_fish)C++17
9 / 100
132 ms13960 KiB
#include "fish.h" #include <bits/stdc++.h> using namespace std; typedef long long ll; const int maxn = 1e5 + 10; vector < pair < int, int > > col[maxn]; long long max_weights(int N, int M, std::vector<int> X, std::vector<int> Y, std::vector<int> W) { bool all_even = true, small_x = true; for (int i = 0; i < M; i ++) { if (X[i] % 2 != 0) all_even = false; if (X[i] > 1) small_x = false; } for (int i = 0; i < M; i ++) { col[X[i]].push_back({Y[i], W[i]}); } for (int i = 0; i < N; i ++) sort(col[i].begin(), col[i].end()); if (all_even) { ll sum = 0; for (int i = 0; i < M; i ++) sum = sum + W[i]; return sum; } else if (small_x) { ll zero = 0, one = 0; for (int i = 0; i < M; i ++) { if (X[i] == 0) zero += W[i]; else one += W[i]; } if (N == 2) return max(zero, one); int to = 0; ll cur = 0, ans = 0; for (int i = 0; i < col[0].size(); i ++) { if (cur + one > ans) ans = cur + one; cur += col[0][i].second; while(to < col[1].size() && col[1][to].first <= col[0][i].first) { one -= col[1][to].second; to ++; } } if (cur + one > ans) ans = cur + one; return ans; } return 0; }

Compilation message (stderr)

fish.cpp: In function 'long long int max_weights(int, int, std::vector<int>, std::vector<int>, std::vector<int>)':
fish.cpp:54:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   54 |         for (int i = 0; i < col[0].size(); i ++)
      |                         ~~^~~~~~~~~~~~~~~
fish.cpp:59:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   59 |             while(to < col[1].size() && col[1][to].first <= col[0][i].first)
      |                   ~~~^~~~~~~~~~~~~~~
#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...