Infraestrutura em Nuvem

1369
Tempo Limite: 4 | Nível: 6

Descrição

Autor: Vinícius Souza

Cláudio é o CEO de uma grande provedora de IaaS (Infrastructure as a Service), a Cláudio Computing, com baixíssimo downtime e valores competitivos. Pedro tem uma série de relatórios que ele precisa concluir e ele está considerando usar algumas máquinas da Cláudio Computing.

Pedro já sabe quanto tempo cada relatório vai levar para ser calculado e quantas máquinas ele está disposto a pagar, ele precisa de sua ajuda para saber quanto tempo vai levar para concluir todos os relatórios.

Devido a gambiarras limitações da API da Cláudio Computing, cada máquina só pode pegar uma sequência contígua de tarefas para executar, e as tarefas não podem ser reordenadas. Pedro pediu sua ajuda para escolher como distribuir as tarefas entre as máquinas para que todos os relatórios fiquem prontos o mais rápido possível.


Entrada


A  entrada consiste de vários casos de teste. Cada caso de teste inicia com dois inteiros N (1 <= N <= 100) e R (1 <= R <= 100), onde N é o número de máquinas que Pedro pretende usar e R é o número de relatórios que Pedro precisa concluir. A pŕoxima linha contém R inteiros Ti (1<= Ti <= 1000), representando a estimativa de quanto tempo (em minutos) cada relatório vai tomar. A entrada é terminada por N = 0 e R = 0.


Saída

Para cada caso de teste, imprima uma linha com um único inteiro quanto tempo vai levar para concluir todos os relatórios.


Exemplos de Entrada Exemplos de Saída

2 5
20 30 20 30 20      
3 8
10 10 20 20 30 30 40 50
0 0

70
90

Efetue Login ou Cadastre-se para submeter uma solução.



Criado por Vinícius Souza | Competição: Elixir Day 2