递归01写的,超限了aaa
#include<bits/stdc++.h>
using namespace std;
int a[105],b[105],sj,gs,ans = INT_MIN;
void sy(int dep,int sumt,int sumv)
{
if(dep>gs)
{
if(sumv>ans)
{
ans = sumv;
}
}
else
{
sy(dep+1,sumt,sumv);
if(sumt+a[dep]<=sj)
{
sy(dep+1,sumt+a[dep],sumv+b[dep]);
}
}
}
int main()
{
cin>>sj>>gs;
for(int i=1;i<=gs;i++)
{
cin>>a[i]>>b[i];
}
sy(1,0,0);
cout<<ans;
return 0;
}