#include<bits/stdc++.h>
using namespace std;
int v,m,n,a[105],b[105],c[105];
long long dp[10005][10005];
string f[205][205];
int main(){
cin>>v>>m>>n;
for(int i=1;i<=n;i++){
cin>>a[i]>>b[i]>>c[i];
for(int j=v;j>=a[i];j--){
for(int k=m;k>=b[i];k--){
if(dp[j-a[i]][k-b[i]]+c[i]>dp[j][k]){
dp[j][k]=dp[j-a[i]][k-b[i]]+c[i];
f[j][k]=f[j-a[i]][k-b[i]]+char(i+48);
}
else if(dp[j-a[i]][k-b[i]]+c[i]==dp[j][k]){
f[j][k]=min(f[j][k],f[j-a[i]][k-b[i]]+char(i+48));
}
}
}
}
cout<<dp[m][v]<<"\n";
for(int i=0;i<f[m][v].size();i++){
cout<<f[m][v][i]<<" ";
}
return 0;
}