求助,调出来必关
#include <bits/stdc++.h>
using namespace std;
const int N=45,S=1e6+10;
int s,n,d,a[N],b[N],dp[S],ans=-1;
int main(){
cin>>s>>n>>d;
for(int i=1;i<=d;i++) cin>>a[i]>>b[i];
dp[0]=s;
for(int i=1;i<=n;i++){
for(int k=1;k<=d;k++){
for(int j=a[k];j<=s;j++){
dp[j]=max(dp[j],dp[j-a[k]]+b[k]*i);
}
}
}
cout<<dp[s];
return 0;
}