Archives
Trending
Support
Login
clear text
XML
Django
JavaScript
MATLAB
C
C++
C#
Python
SQL
Shell
Bash
Markdown
YAML
JSON
HTML
CSS
PHP
Java
Ruby
Go
Rust
Swift
Kotlin
Arduino
TypeScript
Perl
Autohotkey
Lua
SQF
R
Scala
Haskell
Groovy
Dart
Clojure
VB.NET
Objective-C
PowerShell
Bash
CoffeeScript
Verilog
#include
#include
#include
#include
using ll=long long; using namespace std; int n,m,k; int cost[25]; int cw[25][25]; int vw[25][25]; int dp[1006][22][3]; int rec(int money_left, int at, bool locked) { if(at == -1 or money_left == 0) { return 0; } if(dp[money_left][at][locked] != -1) { return dp[money_left][at][locked]; } int result = 0; result = max(result, rec(money_left, at - 1, true)); if(locked) { int spend = money_left - cost[at]; if(spend >= 0) { for(int j = 0; j < m; j++) { int tmp_spend = spend - cw[at][j]; if(tmp_spend >= 0) { result = max(result, rec(tmp_spend, at, false) + vw[at][j]); result = max(result, rec(tmp_spend, at - 1, true) + vw[at][j]); } } } } else { for(int j = 0; j < m; j++) { int spend = money_left - cw[at][j]; if(spend >= 0) { result = max(result, rec(spend, at, locked) + vw[at][j]); result = max(result, rec(spend, at - 1, true) + vw[at][j]); } } } return dp[money_left][at][locked] = result; } int main() { int t; cin>>t; while(t--) { memset(dp,-1,sizeof dp); cin>>n>>m>>k; for(int i=0;i
>cost[i]; } for(int i=0;i
> cw[i][j]; } } for(int i = 0; i < n; i++) { for(int j =0 ; j < m; j++) { cin >> vw[i][j]; } } cout<
Mark as private (unlisted)
for 30 minutes
for 6 hours
for 1 day
for 1 week
for 1 month
for 1 year
everlasting (like CCCP)