#include<bits/stdc++.h>
typedef long long ll;
using namespace std;
const int N=40,V=2e4+10;
int c[N],n,v,dp[N][V],ans;
int main(){
scanf("%d%d",&v,&n);
for(int i=1;i<=n;++i)
scanf("%d",c+i);
for(int i=1;i<=n;++i)
for(int j=c[i];j<=v;++j){
if(dp[i-1][j-c[i]]+c[i]<v)dp[i][j]=max(dp[i-1][j],dp[i-1][j-c[i]]+c[i]);
else dp[i][j]=dp[i-1][j];
}
printf("%d",v-dp[n][v]);
return 0;
}
WA on #1 #4