#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int t , m;
int value[10000] , dp[10010][10010];
int main()
{
cin >> t >> m;
for (int i = 0 ; i < m ; i++)
{
cin >> value[i];
}
for (int i = t ; i >= value[0] ; i--) dp[0][i] = value[0] + dp[0][i-value[0]];
for (int i = 1 ; i < m ; i++)
{
for (int j = 0 ; j <= t ; j++)
{
if (j < value[i]) dp[i][j] = dp[i-1][j];
else dp[i][j] = max(dp[i-1][j] , dp[i-1][j-value[i]]+value[i]);
}
}
printf("%d" , t-dp[m-1][t]);
return 0;
}