#include <stdio.h> #include <iostream> #include <string.h> #include <assert.h> using namespace std; int nrt, a, b, c; long long n, dp[5000]; int main() { //freopen("in", "r", stdin); scanf("%d", &nrt); while(nrt--) { scanf("%lld %d %d %d", &n, &a, &b, &c); if(a > b) swap(a, b); if(b > c) swap(b, c); if(a > b) swap(a, b); if(n == 1) { printf("0\n"); continue; } memset(dp, 0, sizeof(dp)); for(int i = 0; i < b; i++) dp[i] = 1; int i; for(i = b; ; i++) { assert(i < 5000); dp[i] = dp[i - a] + dp[i - b] + (((i - c) >= 0)?(dp[i - c]):(0)); if(dp[i] >= n) break; } printf("%d\n", i); } return 0; }