제출 #1125346

#제출 시각아이디문제언어결과실행 시간메모리
1125346VVUU메기 농장 (IOI22_fish)C++20
컴파일 에러
0 ms0 KiB
#include "fish.h" #include<bits/stdc++.h> #define int long long using namespace std; int max_weights(int n, int m, vector<int> x, vector<int> y, vector<int> w){ vector<vector<pair<int, int> > > p; vector<vector<int> > pre; p.resize(n+10); for(int i=0; i<=n; i++) p[i].push_back(make_pair(0, 0)); for(int i=0; i<m; i++) p[X[i]].push_back(make_pair(Y[i], W[i])); vector<int> ans; ans.resize(n+10); vector<vector<vector<int> > > dp; dp.resize(n+10); for(int i=1; i<=n; i++) for(int i=1; i<=n; i++) for(int i=1; i<=n; i++){ sort(p[i].begin(), p[i].end()); dp[i].resize(p[i].size(), vector<int>(5)); pre[i].resize(p[i].size()); for(int j=1; j<p[i].size(); j++) pre[i][j]+=pre[i][j-1]+p[i][j].second; } for(int i=2; i<=n; i++){ dp[i][0][0]=dp[i-1][0][0]; int L=p[i-1].size(); int val=dp[i-1][L][0]+pre[i].back(); for(int j=pre[i].size()-1; j>=0; j--){ while(L && p[i-1][L-1].first>p[i][j].first) L--, val=max(val, dp[i-1][L][0]+pre[i][j]); if(j) dp[i][j][3]=max(dp[i][j][3], val-pre[i][j-1]); else dp[i][j][3]=max(dp[i][j][3], val); } dp[i][0][0]=max(dp[i][0][0], dp[i][0][3]); int D=0; val=-1e18; for(int j=1; j<p[i].size(); j++){ dp[i][j][1]=dp[i-1][0][0]; while(D+1<p[i-1].size() && p[i-1][D+1].first<p[i][j].first){ D++; val=max(val, dp[i-1][D][2]-pre[i-1][D-1]); } dp[i][j][2]=max(dp[i][j][2], max(val, ans[i-2])+pre[i-1][D]); } ans[i]=dp[i][0][0]; for(int j=1; j<p[i].size(); j++){ dp[i][j][0]=max(dp[i][j][1], max(dp[i][j][2], dp[i][j][3])); ans[i]=max(ans[i], dp[i][j][0]); } } return ans[n]; }

컴파일 시 표준 에러 (stderr) 메시지

fish.cpp: In function 'long long int max_weights(long long int, long long int, std::vector<long long int>, std::vector<long long int>, std::vector<long long int>)':
fish.cpp:10:34: error: 'X' was not declared in this scope
   10 |         for(int i=0; i<m; i++) p[X[i]].push_back(make_pair(Y[i], W[i]));
      |                                  ^
fish.cpp:10:60: error: 'Y' was not declared in this scope
   10 |         for(int i=0; i<m; i++) p[X[i]].push_back(make_pair(Y[i], W[i]));
      |                                                            ^
fish.cpp:10:66: error: 'W' was not declared in this scope
   10 |         for(int i=0; i<m; i++) p[X[i]].push_back(make_pair(Y[i], W[i]));
      |                                                                  ^