#include <bits/stdc++.h>
using namespace std;
long long a[1000005];
long long sum[2000005];
long long mm[2000005];
long long nn[2000005];
long long qq[100];
int main() {
  long long n, q;
  scanf("%I64d%I64d", &n, &q);
  for (int i = 0; i < n; i++) {
    scanf("%I64d", &a[i]);
    mm[i] = i;
  }
  for (int i = 0; i < 2 * n; i++) {
    if (i != 0)
      sum[i] = sum[i - 1] + a[i % n];
    else
      sum[i] = a[i];
  }
  for (int i = 1; i <= q; i++) {
    long long b;
    scanf("%I64d", &b);
    int cc = 0;
    long long MIN = 1e9;
    for (int j = n; j < 2 * n; j++) {
      while (sum[j] - sum[cc] > b) cc++;
      nn[j] = nn[cc] + 1;
      mm[j] = mm[cc];
      if (j - mm[j] >= n) {
        MIN = min(MIN, nn[j]);
      }
    }
    printf("%I64d\n", MIN);
  }
  return 0;
}
