Tima y sus $N$ amigos disfrutan jugando a Bootfall. Bootfall es un juego deportivo para $N+1$ jugadores. Cada jugador tiene una fuerza representada por un entero positivo. El juego consta de $N+1$ rondas. En cada ronda, uno de los jugadores graba la ronda en vídeo y los $N$ restantes se dividen en dos equipos, de manera que cada jugador pertenece a uno de ellos y ambos equipos son no vacíos. La fuerza de un equipo es la suma de las fuerzas de sus integrantes. Además, cada jugador graba exactamente una ronda.
Una ronda se considera empatada si existe una división en dos equipos de igual fuerza; el juego completo se considera amistoso si todas sus rondas son empatadas. Cada uno de los $N$ amigos ya ha comunicado su fuerza a Tima, y ahora Tima puede asignarse cualquier valor válido de fuerza.
Tima conoce las fuerzas de los $N$ jugadores y elegirá un valor que permita que el juego sea amistoso. Ayúdalo a encontrar todos los valores de fuerza posibles.
Entrada
La primera línea contiene un entero positivo $N$ ($1\le N\le 500$), el número de amigos de Tima. La segunda línea contiene $N$ enteros positivos $a_1,a_2,\ldots,a_N$ ($1\le a_i\le 500$; $1\le i\le N$), separados por espacios, donde $a_i$ es la fuerza de la persona $i$.
Salida
La primera línea debe contener un entero $K$, el número de valores de fuerza posibles para Tima. Si no existe ninguno, escribe solamente «0» (sin comillas). En caso contrario, escribe en la segunda línea $K$ enteros positivos separados por espacios: todos los valores de fuerza posibles para Tima, en orden creciente.
Subtareas
Este problema consta de seis subtareas:
- $1\le N\le 12$, $1\le a_i\le 200$ para todo $1\le i\le N$. Vale 6 puntos.
- $1\le N\le 30$, $1\le a_i\le 20$ para todo $1\le i\le N$. Vale 7 puntos.
- $1\le N\le 100$, $1\le a_i\le 100$ para todo $1\le i\le N$. Vale 15 puntos.
- $1\le N\le 270$, $1\le a_i\le 270$ para todo $1\le i\le N$. Vale 16 puntos.
- $1\le N\le 350$, $1\le a_i\le 350$ para todo $1\le i\le N$. Vale 21 puntos.
- $1\le N\le 500$, $1\le a_i\le 500$ para todo $1\le i\le N$. Vale 35 puntos.
Cada subtarea se puntuará si y solo si la solución supera todas las subtareas anteriores.
Ejemplos
Entrada 1
4 1 3 1 5
Salida 1
1 3
Entrada 2
6 3 5 7 11 9 13
Salida 2
4 1 3 17 19
Entrada 3
3 2 2 2
Salida 3
0
Entrada 4
4 200 200 200 200
Salida 4
2 200 600
Nota
Notas sobre el primer ejemplo.
Veamos que, si Tima elige una fuerza de $3$, el juego puede ser amistoso.
- Cuando Tima graba, los demás jugadores pueden dividirse así para empatar la ronda: $(1,3,1)$ en el primer equipo y $(5)$ en el segundo.
- Cuando graba el amigo $1$, los demás pueden dividirse así: $(1,5)$ en el primer equipo y $(3,3)$ en el segundo.
- Cuando graba el amigo $2$, los demás pueden dividirse así: $(1,1,3)$ en el primer equipo y $(5)$ en el segundo.
- Cuando graba el amigo $3$, los demás pueden dividirse así: $(3,3)$ en el primer equipo y $(1,5)$ en el segundo.
- Cuando graba el amigo $4$, los demás pueden dividirse así: $(1,3)$ en el primer equipo y $(1,3)$ en el segundo.
Si Tima elige una fuerza distinta de $3$, el juego no puede ser amistoso.