#include <bits/stdc++.h>
using namespace std;
long long p[55];
struct Node {
  int id;
  long long count, price;
} a[5];
bool cmpId(Node a, Node b) { return a.id < b.id; }
bool cmpPrice(Node a, Node b) { return a.price > b.price; }
int main() {
  int n;
  scanf("%d", &n);
  for (int i = 0; i < n; i++) {
    scanf("%I64d", &p[i]);
  }
  for (int i = 0; i < 5; i++) {
    a[i].id = i;
    a[i].count = 0;
    scanf("%I64d", &a[i].price);
  }
  sort(a, a + 5, cmpPrice);
  long long r = 0;
  for (int i = 0; i < n; i++) {
    r += p[i];
    for (int i = 0; i < 5; i++) {
      a[i].count += r / a[i].price;
      r = r % a[i].price;
    }
  }
  sort(a, a + 5, cmpId);
  for (int i = 0; i < 5; i++) {
    printf("%I64d ", a[i].count);
  }
  printf("\n%I64d\n", r);
  return 0;
}
