#include<bits/stdc++.h>
using namespace std;
int s,n,a[60];
int dp[51][32768];
//  1 2 3 4 5 6 7 8
//1 1 1 1 1 1 1 1 1
//2 1 1 3 4
//3
//4
//5
int main(){
	scanf("%d%d",&s,&n);
	for(int i=1;i<=n;i++) scanf("%d",&a[i]);
	for(int i=1;i<=n;i++){
		for(int j=1;j<=s;j++){
			if(j>=a[i]) dp[i][j]=max(dp[i-1][j],a[i]+dp[i-1][j-a[i]]);
			else dp[i][j]=dp[i-1][j];
		}
	}
	if(dp[n][s]==s) printf("YES");
	else printf("NO");
	return 0;
}

/**************************************************************
	Problem: 1693
	User: lsl
	Language: C++
	Result: Accepted
	Time:9 ms
	Memory:8604 kb
****************************************************************/