// ver.2 속도가 빠름(2중 for문)
#include <stdio.h>
int main()
{
int n, m;
int d1, d2, d3;
scanf("%d %d", &n, &m);
scanf("%d %d %d", &d1, &d2, &d3);
int t = n - m; // n - m이 (독도새우 수) - (보호해야 하는 수)이므로 n - m을 해준다.
int ans = -1;
// i는 d1을 사용한 횟수다.
for (int i = 0; i <= t; i++)
{
// j는 d2를 사용한 횟수다.
for (int j = 0; j <= t; j++)
{
int a = i * d1 + j * d2;
// 만약 a가 k보다 크다면 빠져나가기
if (a > t) break;
// b에는 현재 d3를 이용해 잡아야 하는 물고기수 저장
int b = t - a;
// c에는 b에 d3를 나눈 나머지를 저장한다.
int c = b % d3;
// 만약 c가 0이라면 계산할 수 있으므로 계산을 한다.
if (c == 0)
{
int k = b / d3; // k에 잡아야 하는 물고기를 d3를 이용해 잡은 횟수 저장
// 만약 ans가 처음 그대로인 -1이면 잡을 수 없다는 것이고
// i + j + k보다 크다면 최솟값이 생겼다는것이므로 변경
if (ans == -1 || (ans > i + j + k))
ans = i + j + k;
}
}
}
printf("%d", ans);
}