Combinando zip e enumerate

Por vezes, podemos querer conhecer os índices ao trabalhar com listas combinadas. Nesse caso, podemos usar enumerate() em conjunto com zip(). No entanto, é fundamental compreender o que cada uma destas funções faz. zip retorna um tuplo para cada par de elementos das listas. enumerate retorna um tuplo para cada elemento de uma lista, contendo o índice e o valor. Portanto, a estrutura resultante será um tuplo de tuplos:
a = [1, 2, 3, 4]
b = [5, 6, 7, 8]
zip(a, b)             # [(1, 5), (2, 6), (3, 7), (4, 8)]
enumerate(a)          # [(0, 1), (1, 2), (2, 3), (3, 4)]
enumerate(b)          # [(0, 5), (1, 6), (2, 7), (3, 8)]
enumerate(zip(a, b))  # [(0, (1, 5)), (1, (2, 6)), (2, (3, 7)), (3, (4, 8))]

# Portanto, precisamos percorrer os elementos com tuplos:
for i, (item1, item2) in enumerate(zip(a, b)):
    print(f'índice: {i} => a[i]={item1} e b[i]={item2}')

# índice: 0 => a[i]=1 e b[i]=5
# índice: 1 => a[i]=2 e b[i]=6
# índice: 2 => a[i]=3 e b[i]=7
# índice: 3 => a[i]=4 e b[i]=8
Repara como item1 e item2 estão agrupados para formar um tuplo no loop for.

Desafio

Dadas 3 listas, cada uma em uma linha separada, pede-se que cries uma nova lista que represente a soma dos elementos das 3 listas, enquanto ignoras os valores nas posições ímpares (a indexação começa em 0).
A entrada contém 3 linhas - cada uma com números separados por um espaço.
O programa deve imprimir uma única linha - a lista resultante.
Entrada
Saída
1 2 3 4 5 6 7 8 9 10 11 12
15 21
Consegues resolver isto numa única linha 😎?
 

Constraints

Time limit: 1 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue