#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; const double PI = 3.14159265358979323846; const double EPS = 1e-12; const int INF = 1<<25; typedef pair P; typedef long long ll; typedef unsigned long long ull; ll dp[100010]; int main(){ ll C, N; cin>>C>>N; vector d(N); for(int i = 0; i < N; i++) cin>>d[i]; memset(dp, -1, sizeof(dp)); dp[C] = 0; for(int i = 0; i < N; i++){ for(int j = C; j >= d[i]; j--){ if(dp[j]>=0 && (dp[j-d[i]]<0 || dp[j-d[i]]>dp[j]+1)) dp[j-d[i]] = dp[j]+1; } cerr<