#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define all(c) (c).begin(), (c).end()
#define sz(c) (int)(c).size()
#define vt vector
#define pb push_back
#define F first
#define S second
void solve() {
ll s,n; cin>>s>>n;
vt<ll> v(n), w(n), k(n);
for (int i=0;i<n;i++){
cin>>v[i]>>w[i]>>k[i];
k[i] = min(k[i], s/w[i]);
}
vt<ll> dp(s+1, 0);
for (int i=0;i<n;i++){
for (int cn=1;cn<=k[i];cn++){
for (int x=s;x>=w[i];x--){
dp[x] = max(dp[x], dp[x-w[i]]+v[i]);
}
}
}
cout << dp[s] << endl;
}
int main() {
int tt=1;
cin>>tt;
while(tt--) solve();
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |