Problem

8 /10


moedas

Problem

Na Terra Encantada, são usadas moedas de valores A1, A2,..., AM. O mágico veio à loja e descobriu que tinha exatamente duas moedas de cada valor. Ele precisa pagar a quantia N. Escreva um programa para determinar se ele pode pagar sem troco.

Entrada
Na entrada do programa  primeiro vem o número N (1 <= N <= 109), depois o número M (1 <= M <= 15) e depois M números distintos aos pares A 1 , A2,..., AM (1 <= Ai <= 10 9 ).

Impressão
Primeira impressão K - o número de moedas que o Magic Man terá que dar se puder pagar o valor especificado sem troco. Em seguida, imprima K números que definem os valores das moedas. Se houver várias soluções, imprima a variante em que o Mágico dá o menor número possível de moedas. Se houver várias dessas opções, imprima qualquer uma delas.

Se você não puder ficar sem troco, imprima um único número 0. Se o Mágico não tiver dinheiro suficiente para pagar o valor especificado, imprima um único número -1 (menos um).
 
Entrada Saída
100 6
11 20 30 40 11 99
3
40 30 30