/* -*- coding: utf-8 -*- * * 3067.cc: No.3067 +10 Seconds Clock - yukicoder */ #include #include using namespace std; /* constant */ const int MAX_N = 200000; /* typedef */ /* global variables */ int ts[MAX_N], xs[MAX_N]; /* subroutines */ /* main */ int main() { int n, t; scanf("%d%d", &n, &t); for (int i = 1; i < n; i++) scanf("%d", ts + i); int k; scanf("%d", &k); for (int i = 0; i < k; i++) scanf("%d", xs + i), xs[i]--; int cnt = 0, xc = 0; for (int i = 0, j = 0; i < n; i++) { t -= ts[i]; //printf(" i=%d, t=%d, xc=%d\n", i, t, xc); if (t <= 0) { int d = -t / 10 + 1; if (d > xc) { puts("-1"); return 0; } t += d * 10; cnt += d, xc -= d; } if (j < k && i == xs[j]) xc++, j++; } printf("%d\n", cnt); return 0; }