#include <bits/stdc++.h>   using namespace std;   int k;   int n[3], t[3];   multiset<int> f[3];   int main() {     cin >> k;     cin >> n[0] >> n[1] >> n[2];     cin >> t[0] >> t[1] >> t[2];     for (int i = 0; i < 3; i++)       for (int j = 0; j < n[i]; j++) f[i].insert(0);     int ans = 0;     for (int i = 0; i < k; i++) {       int go[3];       for (int j = 0; j < 3; j++) {         go[j] = *f[j].begin();         f[j].erase(f[j].begin());       }       go[1] -= t[0];       go[2] -= t[0] + t[1];       int w = max(go[0], max(go[1], go[2]));       ans = w + t[0] + t[1] + t[2];       f[0].insert(w + t[0]);       f[1].insert(w + t[0] + t[1]);       f[2].insert(ans);     }     cout << ans;   }   