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