#include<bits/stdc++.h>
using namespace std;
int dp[31][20001],v[31];
int main(){
int m,n,i,j;
cin>>m>>n;
for(i=1;i<=n;i++){
cin>>v[i];
}
for(i=1;i<=n;i++){
for(j=m;j>=1;j--){
if(j>=v[i]){
dp[i][j] = max(dp[i-1][j],dp[i-1][j-v[i]]+v[i]);
}else{
dp[i][j] = dp[i-1][j];
}
}
}
cout<<m-dp[n][m];
return 0;
}
/**************************************************************
Problem: 1779
User: admin
Language: C++
Result: Accepted
Time:27 ms
Memory:4496 kb
****************************************************************/