#include <stdio.h>
int main()
{
// a = 다리 위에 있는 학생 수
// k = 대기중인 학생 수
// w = 최대 인원
// b = 다리 구간의 수
// n = 다리를 건너야 하는 학급 수
// k = 각 학급별 인원
int a[104] = { 0 }, w, b, n, k[104];
scanf("%d %d", &w, &b);
scanf("%d", &n);
//1반부터 N반까지 학생 수 입력
for (int i = 1; i <= n; i++) scanf("%d", &k[i]);
// 시간 저장
int t = 0;
// 첫번째로 대기중인 학급
int j = 1;
// 종료 조건 체크
while (1)
{
// 다리 위에 있는 학생 수
int asum = 0;
// 현재 다리에 학생이 얼마나 있는지 합계
for (int i = 1; i <= b; i++)
asum += a[i];
// 다리 위에도 학생이 없고, 대기 중인 학급도 없다면 나가기
if (asum == 0 && j > n)
break;
//1분이 흐름.
t++;
//다리의 첫 번째 위치에 있는 학생들은 이동이 끝남.
asum -= a[1];
// 한 칸씩 왼쪽으로 이동한다.(다리 한 칸 이동)
for (int i = 2; i <= b; i++) a[i - 1] = a[i];
// a[b]는 비어있을 것이므로 0으로 채워준다.
a[b] = 0;
//만약 대기하는 학급이 있으면 다리 위에 학생이 올라갈 수 있는지 확인
if (j <= n)
{
// x에 다리에 올라올지 정하는 학급을 넣어놓는다.
int x = k[j];
// 다리 위에 올라갈 수 있는 경우
if ((asum + x) <= w) {
a[b] = x;
//다음 학급으로 전환.
j++;
}
}
}
//시간 출력.
printf("%d", t);
}