s,t,n=map(int,input().split()) X=[] for i in range(3): A=list(map(int,input().split())) X.append(A) Z=[0]*t+[10**18] for i in range(n-1): D=[0]*(t+1) for c in range(t+1): for d in range(c+1): cnt=0 for q in range(3): cnt+=(Z[min(t,c-d+(d*X[q][1])//X[q][2])]*X[q][0]) D[c]=max(D[c],cnt) D[c]//=100 Z=D[:] best=-1 Ans=[-1] for d in range(s+1): cnt=0 for q in range(3): cnt+=(Z[min(t,s-d+(d*X[q][1])//X[q][2])]*X[q][0]) cnt//=100 if cnt>best: Ans=[d] best=cnt elif cnt==best: Ans.append(d) print(best//(10**16)) print(len(Ans)) print(*Ans)