#include <bits/stdc++.h>
long long sum[200005];
long long a[200005];
int main(int argc, char *argv[]) {
  long long n;
  long long m;
  scanf("%lld %lld", &n, &m);
  for (int i = 0; i < m; i++) {
    scanf("%lld", &a[i]);
  }
  sum[0] = a[0];
  long long k = 0;
  long long minx = a[0];
  for (int i = 1; i < m; i++) {
    sum[i] = sum[i - 1] + a[i];
    if (minx > sum[i]) {
      minx = sum[i];
      k = i;
    }
  }
  if (minx + n <= 0) {
    for (int i = 0; i < m; i++) {
      if (sum[i] + n <= 0) {
        printf("%d\n", i + 1);
        break;
      }
    }
  } else if (sum[m - 1] >= 0) {
    printf("-1\n");
  } else {
    long long x = (n + minx) / (-sum[m - 1]);
    long long cnt = x * m;
    n = (n + minx) % (-sum[m - 1]);
    if (n == 0) {
      printf("%lld\n", k + 1 + cnt);
    } else {
      n = n - minx + sum[m - 1];
      cnt += m;
      for (int i = 0; i < m; i++) {
        if (sum[i] + n <= 0) {
          printf("%lld\n", cnt + i + 1);
          break;
        }
      }
    }
  }
  return 0;
}
