#include int main () { long long n = 0LL; int a1 = 0; long long b1 = 0LL; int a2 = 0; long long b2 = 0LL; int a3 = 0; long long b3 = 0LL; int res = 0; long long ans = 0LL; res = scanf("%lld", &n); res = scanf("%d", &a1); res = scanf("%lld", &b1); res = scanf("%d", &a2); res = scanf("%lld", &b2); res = scanf("%d", &a3); res = scanf("%lld", &b3); for (int i = 0; i < a3; i++) { for (int j = 0; j < a3; j++) { if ((long long)(i*a1+j*a2) <= n) { long long tmp = b1*((long long)i)+b2*((long long)j)+b3*((n-((long long)(i*a1+j*a2)))/((long long)a3)); if (tmp > ans) { ans = tmp; } } } } for (int i = 0; i < a2; i++) { for (int j = 0; j < a2; j++) { if ((long long)(i*a1+j*a3) <= n) { long long tmp = b1*((long long)i)+b3*((long long)j)+b2*((n-((long long)(i*a1+j*a3)))/((long long)a2)); if (tmp > ans) { ans = tmp; } } } } for (int i = 0; i < a1; i++) { for (int j = 0; j < a1; j++) { if ((long long)(i*a2+j*a3) <= n) { long long tmp = b2*((long long)i)+b3*((long long)j)+b1*((n-((long long)(i*a2+j*a3)))/((long long)a1)); if (tmp > ans) { ans = tmp; } } } } printf("%lld\n", ans); return 0; }