#include<bits/stdc++.h>
using namespace std;
const int N=510;
long long f[N][N],v[N],t[N],z[N];
long long vv,g,n;
int main(){
cin>>vv>>g>>n;
memset(f,0,sizeof f);
for(long long i=1;i<=n;i++){
cin>>t[i]>>v[i]>>z[i];
}
for(long long i=1;i<=n;i++){
for(long long j=vv;j>=v[i];j--){
for(long long k=g;k>=z[i];k--)
f[j][k]=max(f[j-z[i]][k-v[i]]+t[i],f[j][k]);
}
}
cout<<f[vv][g];
return 0;
}