#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
****************************************************************/