From 839f18ec81d82af016e042674aec1ce2912ae84e Mon Sep 17 00:00:00 2001 From: crupest Date: Tue, 23 Feb 2021 21:27:58 +0800 Subject: import(solutions): Add acwing problem 2 (pack problem). --- works/solutions/acwing/2.cpp | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 works/solutions/acwing/2.cpp (limited to 'works/solutions/acwing/2.cpp') diff --git a/works/solutions/acwing/2.cpp b/works/solutions/acwing/2.cpp new file mode 100644 index 0000000..1a75c19 --- /dev/null +++ b/works/solutions/acwing/2.cpp @@ -0,0 +1,30 @@ +#include +#include + +int N, V; +int v[1001]; +int w[1001]; +int states[1001][1001]; + +int main() { + std::cin >> N >> V; + + for (int i = 1; i <= N; i++) { + std::cin >> v[i] >> w[i]; + } + + for (int i = 1; i <= N; i++) { + for (int j = V; j >= 0; j--) { + if (j >= v[i]) { + states[i][j] = + std::max(states[i - 1][j], states[i - 1][j - v[i]] + w[i]); + } else { + states[i][j] = states[i - 1][j]; + } + } + } + + std::cout << states[N][V]; + + return 0; +} -- cgit v1.2.3