Voltar

uCoder | 1311 | Nível: 6 | Tempo Limite: 5

Ônibus

Adaptado por Erich Rodrigues

Competição: Maratona de Programação da SBC 2013


Competições de programação normalmente exigem infraestrutura e organização por parte dos responsáveis. Um problema que frequentemente deve ser resolvido é em relação ao transporte. Ao participar de uma competição recente, Ricardinho ficou observando os ônibus e micro-ônibus utilizados no transporte dos competidores, todos enfileirados um atrás do outro enquanto os competidores desembarcavam. Os veículos eram todos de uma mesma empresa, embora tivessem pinturas distintas. Ricardinho começou a se perguntar de quantas maneiras aquela fila poderia ser formada, usando ônibus e micro-ônibus daquela empresa.

Cada ônibus tem 10 metros de comprimento. Já os micro-ônibus possuem 5 metros de comprimento. A partir de um dado comprimento total a ser alcançado com ônibus e micro-ônibus enfileirados, e das quantidades de cores diferentes para ônibus e micro-ônibus, Ricardinho quer saber de quantas formas uma fila pode ser formada.


Entrada

A entrada é composta por apenas uma linha, contendo três inteiros N, K e L, separados por espaço. O inteiro N representa o comprimento total, em metros, da fila que Ricardinho está considerando. K e L representam o número de cores distintas disponı́veis para micro-ônibus e ônibus, respectivamente. Note que, como os inteiros N, K e L podem ser muito grandes, recomenda-se o uso de inteiros de 64 bits.


Saída

Como o número de formas diferentes de se formar a fila pode ser muito grande, Ricardinho está interessado nos últimos 6 dígitos da quantidade. Assim, para cada caso de teste, seu programa deve produzir uma única linha contendo exatamente 6 dígitos, correspondentes aos últimos dígitos da solução

Restrições
• 5 ≤ N ≤ 1015 e N é múltiplo de 5
• 1 ≤ K ≤ 1015
• 1 ≤ L ≤ 1015


Exemplo de Entrada Exemplo de Saída

5 1 1

000001

5 1000 1000

001000

25 5 5

006000