#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <string.h>


int main(void){
	freopen("5.in","r",stdin);

	int capjumps=128,numjumps=0;
	int *jumps=malloc(capjumps*sizeof(int));

	while(true){
		int target;
		scanf("%d",&target);
		if(feof(stdin))break;
		if(numjumps==capjumps){
			capjumps*=2;
			jumps=realloc(jumps,capjumps*sizeof(int));
		}
		jumps[numjumps++]=target;
	}

	int *jumps1=malloc(numjumps*sizeof(int));
	memcpy(jumps1,jumps,numjumps*sizeof(int));

	int at=0;
	int nsteps=0;
	while(0<=at&&at<numjumps){
		at+=jumps1[at]++;
		nsteps++;
	}
	printf("%d\n",nsteps);

	memcpy(jumps1,jumps,numjumps*sizeof(int));

	at=0;
	nsteps=0;
	while(0<=at&&at<numjumps){
		int next=at+jumps1[at];
		if(jumps1[at]>=3)jumps1[at]--;
		else jumps1[at]++;
		at=next;
		nsteps++;
	}
	printf("%d\n",nsteps);

	free(jumps1);
	free(jumps);
}