Se tiene un tablero de juego, formado por casillas numeradas del al , de forma circular, como se muestra en la figura siguiente (con ):
| 2 | 1 | 2 | 1 | 1 | 2 | ||
|---|---|---|---|---|---|---|---|
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
Los números pequeños son el índice de la casilla (de a ), el número grande es el valor de la casilla. La doble flecha indica que el tablero es circular: si estás en la casilla (en el ejemplo, la ) y avanzas una casilla, caes a la casilla ; y si estás en la casilla y retrocedes una casilla, caes a la casilla .
Se tiene una ficha que empieza en la casilla . A cada turno, la casilla mira el valor de la casilla, y avanza (o retrocede, si el número es negativo) tantas casillas como indica dicho número.
Haz un programa que descubra dónde acabará una ficha después de avanzar turnos.
Cada entrada contiene un único caso de pruebas. Primero, se dan los números y en una línea, separados por espacios. A continuación, y también separados por espacios, una línea con los valores enteros que contienen las casillas , , …, .
Escribe una línea con el índice (de a ) de la casilla donde estará la ficha después de avanzar turnos de juego.
Hay 10 grupos de entradas. Tu programa recibirá 10 puntos por cada grupo de entradas resuelto correctamente, en menos de 1 segundo de CPU por entrada. Ninguna entrada contendrá una mayor que . Las entradas del grupo -ésimo no tendrán superiores a . Además, los valores de las casillas de los 3 primeros grupos de entradas únicamente serán o ; en los siguientes grupos únicamente aparecerán valores entre y ; y en las casillas de los restantes grupos aparecerán valores entre y .
Input
8 6 1 2 1 2 1 1 2 1
Output
1
Input
4 0 1 1 1 1
Output
0
Input
8 1 -3 -2 -3 -2 -3 -2 -3 -2
Output
5
Input
10 1001 1000000001 -3 11 104 -1003 1004 18 1 1 1
Output
1