Submission #1079237

#TimeUsernameProblemLanguageResultExecution timeMemory
1079237faricaCatfish Farm (IOI22_fish)C++17
0 / 100
854 ms2097152 KiB
#include "fish.h" #include <bits/stdc++.h> using namespace std; long long max_weights(int N, int M, std::vector<int> X, std::vector<int> Y, std::vector<int> W) { vector<vector<long long>>dp(N+1, vector<long long>(N+1, 0)); vector<vector<pair<long long,long long>>>v(N); for(int i=0; i<M; ++i) { v[X[i]].push_back({Y[i], W[i]}); } for(int i=0; i<N; ++i) sort(v[i].begin(), v[i].end()); for(int i=1; i<=N; ++i) { dp[i][0] = dp[i-1][N]; long long cnt1 = 0, cnt2 = 0, sum = 0, prev = 0; for(int j=1; j<=N; ++j) { dp[i][j] = max(dp[i][j-1], dp[i-1][j]); if(!v[i].empty() && cnt2 != v[i].size() && v[i][cnt2].first == j - 1) { sum += v[i+1][cnt2].second; ++cnt2; } if(i != 1 && !v[i-2].empty() && cnt1 != v[i-2].size() && v[i-2][cnt1].first == j - 1) { prev += v[i-2][cnt1].second; prev = max(prev, dp[i-1][j-1] + v[i-2][cnt1].second); ++cnt1; } dp[i][j] = max(dp[i][j], prev + sum); } } return dp[N][N]; }

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:21:38: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   21 |             if(!v[i].empty() && cnt2 != v[i].size() && v[i][cnt2].first == j - 1) {
      |                                 ~~~~~^~~~~~~~~~~~~~
fish.cpp:25:50: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<long long int, long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   25 |             if(i != 1 && !v[i-2].empty() && cnt1 != v[i-2].size() && v[i-2][cnt1].first == j - 1) {
      |                                             ~~~~~^~~~~~~~~~~~~~~~
#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...