0分求调
#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e4+5;
int n,m;
int a[maxn],b[maxn];
long long dp[maxn][maxn]={0};
int main(){
cin >> n >> m;
for(int i = 1;i <= m;i++){
cin >> a[i] >> b[i];
}
for(int i = 1;i >= m;i++){
for(int j = 0;j <= n;j++){
dp[i][j]=dp[i-1][j];
if(j>=a[i])dp[i][j]=max(dp[i][j],dp[i-1][j-a[i]]+a[i]*b[i]);
}
}
cout << dp[n][m];
return 0;
}