제출 #700181

#제출 시각아이디문제언어결과실행 시간메모리
700181n1k메기 농장 (IOI22_fish)C++17
0 / 100
1088 ms55252 KiB
#include <bits/stdc++.h>

#define ll long long
#define vt vector
#define pb push_back
#define ar array
#define all(x) (x).begin(), (x).end()
#define sz(x) (x).size()

using namespace std;

/*
 1. simplify
 2. add new elements
 3. brute force solution
 4. optimize
*/

// --- templates ---

// --- code ---

ll max_weights(int n, int m, vt<int> X, vt<int> Y, vt<int> W){

	int h = 2;

	vt<vt<ll>> a(n, vt<ll>(h));
	for(int i = 0; i < m; i++){
		a[X[i]][1] = W[i];
	}
		

	for(int i = 0; i < n; i++) cin >> a[i][1];

	auto f = [](auto l, auto i, auto j) -> ll {
		if(i < 0 || j < 0) return 0;
		return l[i][j];
	};
	auto get = [](auto l, auto i) -> ll {
		if(i < 0 || i >= l.size()) return 0;
		return l[i][1];
	};

	vt<vt<ll>> dp(n, vt<ll>(h));
	for(int i = 0; i < n; i++){
		dp[i][0] = max(f(dp, i - 1, 0), f(dp, i - 1, 1));

		dp[i][1] = max({
			f(dp, i - 2, 0) + get(a, i - 1) + get(a, i + 1),
			f(dp, i - 2, 1) + get(a, i + 1),
			f(dp, i - 1, 1) + get(a, i + 1) - get(a, i)
		});
	}

	return max(dp[n - 1][0], dp[n - 1][1]);
}

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

fish.cpp: In instantiation of 'max_weights(int, int, std::vector<int>, std::vector<int>, std::vector<int>)::<lambda(auto:26, auto:27)> [with auto:26 = std::vector<std::vector<long long int> >; auto:27 = int]':
fish.cpp:49:34:   required from here
fish.cpp:40:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::vector<long long int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   40 |   if(i < 0 || i >= l.size()) 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...