#include using namespace std; typedef long long ll; #define rep(i,a,b) for(ll i=(ll)(a);i<(ll)(b);i++) #define rrep(i,a,b) for(ll i=(ll)(a-1);i>=(ll)(b);i--) #define MOD 998244353 #define INF 1e16 template bool chmax(T& a,T b){if(a bool chmin(T& a,T b){if(a>b){a=b;return 1;}return 0;} ll comb(ll x,ll y){ ll ans=1; rep(i,0,y) ans*=(x-i); rep(i,0,y) ans/=(i+1); return ans; } ll rui(ll x){ if(x==0) return 1; return 2*rui(x-1); } ll fac(ll x){ if(x==0) return 1; return x*fac(x-1); } ll pow(ll x,ll n){ ll ans=1; while(n>0){ if(n&1) ans*=x; x*=x; n>>=1; } return ans; } int main(){ ll n,a,b,c; cin >> n >> a >> b >> c; vector dp(n+1,0); rep(i,0,n+1){ if(3<=i&&i<5) dp[i]=max(dp[i-3]+a,max(dp[i-2],dp[i-1])); if(5<=i&&i<10) dp[i]=max(max(dp[i-5]+b,dp[i-3]+a),dp[i-1]); if(10<=i) dp[i]=max(max(dp[i-10]+c,dp[i-5]+b),max(dp[i-3]+a,dp[i-1])); } cout << dp[n] << endl; //rep(i,0,n) cout << dp[i] << ' '; //cout << endl; }